January 2009 to present |
|
Microsoft, Redmond, WA
Principal Architect - 緑 - Technical Strategy Incubation |
Working on a rather interesting project that I can not talk about.
|
|
October 2005 to January 2009 |
|
Andesa Services, Allentown, PA
Chief Troublemaker - R&D Manager |
Andesa Services is a life and annuity policy administration solutions company that
processes very large amounts of business critical data on a daily basis. I
designed and implemented a clustered computing solution that provided the scalability
needed for the company to grow its business and help control costs within the
data center. Also helped define a better development life cycle along with
implementing the tools to help bring the company to the next level in productivity
and reliability. Helped define and move more of the infrastructure to a
more secure process model as required by the changes in the business.
Defined and designed the next generation management console for our data
processing systems, bringing higher usability, better visibility, and stricter
auditability. Helped mentor and grow the technology teams.
|
|
January 2004 to March 2005 |
|
Fiberlink Communications, Blue Bell, PA
Chief Troublemaker - Backoffice/Web Systems |
Fiberlink provides managed, secure corporate remote access solutions.
Restructured the application interfaces to improve security, management,
and reliability. Added reseller support. Architected and
implemented a site wide web security system that provides a brandable, single
sign-on solution across a wide range of different backoffice services.
Architected an advanced, high-capacity client policy and data update servicing
system that performs over 100 times better than the previous system and is
able to be distributed to multiple co-location facilities for higher
availability and scalability. Advanced the development environment
by incorporating a modern revision control system and built our own Linux
workstation distribution based on the RedHat Enterprise Linux run in
production such that the development environment would more closely
match production - this included building automatic network install and
update services for the workstations.
|
|
February 2000 to July 2003 |
|
WorldGate Communications, Inc., Trevose, PA
Director, Systems Engineering / Principal Engineer |
WorldGate built Interactive TV solutions using ultra-thin clients (basic digital
cable boxes with minimal CPU power) and a cluster of servers providing the
interactivity encoded into real-time MPEG streams. Joined WorldGate to
work on the head-end systems, to design a method to scale them from the
relatively small usage of the trial systems to the potential full roll-out to AT&T
(now Comcast) cable systems. This included dynamic provisioning to allow
for addition or replacement of hardware. Designed and developed a patented
system for recombining control streams in Motorola based digital headends so as
to allow the WorldGate and Gateway services to operate within a HITS (headend-in-the-sky)
based setup. Leading the project to move to Linux when the company ran
into financial difficulties and all ITV projects were stopped. Built the large
diskless Linux cluster (over 120 nodes when we ran out of equipment space) with our
own kernel and network boot process into an internal Linux distribution that would
install the latest version of our system over the network to the cluster manager.
|
|
December 1997 to January 2000 |
|
NextBus Inc., Emeryville, CA
Co-founder / Director of Research and Development |
One of the founding partners in a startup company that deals with transit
systems to provide information to passengers, mainly real-time prediction of bus
arrival times. Responsible for the architecture and implementation of the
backend, server, and web-based parts of the system. Designed the core
structure such that it was reliable, fail-over capable, and scalable to very
large transit systems. All development done remotely over the internet to
co-located servers and equipment on the buses. Chief architect for the bus
location and prediction system and implemented the first prototype in order to
prove that the concept was possible. This included the internet/web and
wireless distribution of the predictions in addition to the data collection and
prediction generation technology. The core code was written in Java which
provided for cross-platform failover capabilities.
|
|
June 1993 to December 1997 |
|
SCALA Inc., Exton, PA
Director of Research and Development |
Scala is a company that produces multi-media software solutions. Joined
the company as it was re-inventing itself as a US-based technology company.
Responsible for building the research and development department, including
budgets, finding office space, and hiring engineers. Designed the MMOS (Multi-Media
Operating System) that is at the heart of all of the Scala technology. Won
a contract with General Instrument for putting our Scala technology at the heart
of their Digicipher-II satellite boxes that were to be used by Primestar.
This contract made it possible to grow the Scala engineering department quickly
enough to capitalize on the decline of Commodore-Amiga, where I was a friend of
many great engineers, most of whom joined me at Scala. Most proud of the
engineering culture I helped create at Scala, with a strong focus on quality and
taking the up-front engineering time to help provide significant quality and
development efficiencies later.
|
|
May 1989 to June 1993 |
|
Commodore-Amiga, Inc., West Chester, PA
Senior Systems Engineering Specialist / OS Development Group |
The Amiga was the first multi-media desktop computer with many features that
have only recently made it into the more main-stream platforms. Was in
charge of a large part of the Amiga OS, including the core kernel, hardware auto-configuration,
audio control, layers (windowing), and Workbench (the graphical file/program
manager). Responsible for advanced CPU support and feedback to Motorola.
Designed a kernel-based debugger system that was able to operate well enough
that we eliminated the need for hardware based debugging systems.
Rearchitected the Layers system to provide over 700% performance improvements in
its operations plus significant enhancements for rendering to the Layers,
reduced memory foot-print, and a reduction in the number of iterations needed
for each additional layer. (from O(n^2) to O(log n) Involved in
helping debug and optimized the code generated by the Amiga SAS/C compiler.
|
|
June 1984 to May 1989 |
|
Mosaic Systems, Inc., Troy, MI
Software Engineer and Systems Architect |
Mosaic Systems was a bleeding-edge high-tech startup that worked in the wafer-scale
integration field. Helped design and implement the software infrastructure
for testing, tracking, and programming the wafers. This included robotic
control of complex test fixtures requiring very exact movement to the numerous
contact points.
|
|
1979 to 1983 |
|
Part-time consultant
Software Engineer and Architect |
Built various types of systems, from Medical Billing software to Country Club
Members Database system to a multi-user PDP-11 system with a custom OS and
security system for my high school to a high-performance AutoCAD display driver
for a custom high-resolution NCR display card.
|