Stephen D. Williams
TS/SCI - CISSP - IT Architect / Dev / Admin / Mgmt. - AI / Perf. / Security / Usability

sdw@lig.net —703-371-9362
http://sdw.st— AIM:sdw — Fax:703-995-0407 — PO Box 40, Mountain View, CA 94042

These paragraphs describe career themes in my professional background, focusing on a particular interest.

I have built experience in a range of abilities that together form an architectural capability that covers project lifecycles from problem recognition and product management, through design, implementation, deployment, and marketing. Specific experience areas include: government consulting, security and PKI technology, software development, performance engineering, intelligence and intelligent systems, management, and usability. These themes are described below. This document can be found at http://sdw.st/sdwthemes while my resume is at: http://sdw.st/resume .

Engineering and Personality: I am a creative developer with a wide range of interests, knowledge, and successful experience. My background is unique, unusual, and gives me rare and deep perspective. This has proved very useful in finding solutions that, often, no one else sees. I continue to be excited about technology at all levels: from discovery through viability to successful roll out of features to users. I have been entreprenurial since I was a pre-teen, going door to door selling my services, through starting several companies as far back as 1985, starting and failing Internet startups, and conceiving and building new features at AOL. I love tricky technical puzzles, whether it is solving a low-level data manipulation optimization or architecting a system from scratch using existing, emerging, and just invented methods. I am an expert debugger and detective of technical problems. As an example of the former, I recently invented a method to allow mixed bit and byte data to keep byte-sized data byte-aligned with essentially no overhead. At Lexis-Nexis, when porting a particularly tricky system written in C, I once had to use 37 breakpoints levels to find an insidious bug. At AOL, I optimized and debugged an online application running at several thousand transactions per second that would only crash after 25 million transactions, on a live system with unusable core facilities. I have used a number of tools and techniques to identify targets for optimization in systems such as gprof and valgrind. Many years ago I wrote my own memory allocation debugging code to find memory leaks in C++ code (which implemented my own language, a direct analogue of a web browser / HTML / web forms in 1989).

Software Development and Systems Architecture: I have been developing software since 1981, professionally since 1982. One of my most enjoyable pursuits, I have designed and written significant systems that have made bulbs for the Statue of Liberty, changed the text and video communication habits of millions, used in operations communication for the Air Force, allowed layered video playback, and controlled retail operations at several companies. System architecture and development in teams has included systems directly controlling trillions of dollars in payments, sensitive government communication, various analysis tasks, and the supercomputer operations. I have designed and implemented my own languages. I have spent considerable design effort solving difficult, persistent problems such as flexible efficient data interchange. Languages, libraries, and methods evolve over time. I focus on the best design and implementation techniques, algorithms, tools, and systems. Constantly following cutting edge ideas and technology, I often am ahead of the curve in some way, while holding back judiciously when technology isn't yet fully viable. Currently having certain application targets, I am again retooling for effective, lightweight development of scalable interactive applications and back end services. I am looking for opportunities to employ my proven architecture, design, and development skills to important applications with emerging tools.

Java, C++, C#, .Net, and Development Processes: My career has included extensive development experience at all levels in a variety of environments, including banking, online services, and highly secure government applications. This development has predominantly involved Java, C#, and C++ while also including Perl, Javascript, and other languages as necessary. I have worked with .Net libraries and frameworks, various Java frameworks and application servers, and popular libraries such as Boost. I have a long history of Unix and Windows development and administration, with the recent addition of Mac OS X as a key platform. As a systems architect and developer, I have built web applications, web scripting engines, N-tier applications, desktop GUI applications, plug-ins to commercial applications such as I2's Analyst Notebook, and secure applications involving PKI smart cards, Java applets, message queues, and mainframe integration. I have worked in traditional and agile development environments, and understand the benefits and pitfalls of both. I typically employ UML, use cases, and other best practices for code design and communication. I normally use continuous integration with thorough code review practices and, as needed, various optional procedures to ensure high security, rapid rollout, adaptability, efficiency, or other project goals. Effective development in each business and development environment requires customization of the development process which I am comfortable adapting to.

Federal Government: Having been a government consultant for the last seven years at HPTi, I have worked at several Federal departments and many agencies. These have included intelligence community, DoD, and civilian agencies. Roles have included research principal, project manager, lead architect and developer, operations / security / systems manager, and large program assessment subject matter expert. I have researched government regulations and published documents to the government, specifically those related to security and artificial intelligence. I successfully introduced Wiki's to government clients in 2003. I have been a direct technical contributor to many proposals. I was also the technical lead on two high technology government development projects at CSC in 1987. An early example of my creativity, I accomplished a surprisingly prescient web-browser-like interactive forms design and implementation, used in all Air Force air depots for years.

Security and Cryptography: Long interested in security and cryptography, including having actively participated for over seven years on the Cypherpunks mailing list in the early 90's, I have gradually expanded my security knowledge through work and research. Early experience included defeating copy protection mechanisms for fun in assembly, back in 1982 when it was legal. I have run Internet servers for myself and several companies since 1992, where managing security, including experience with break-ins, is a key activity. I researched and presented a security-related paper to the Nevada Gaming Commission. My first project at HPTi, for the Federal Government, was as senior architect and project manager on the Treasury FMS Secure Payment System. After introducing key architectural design elements to complete the design, I mentored developers on technology required, and lead prototyping to test key technical techniques. Later, due to the trillions of dollars the system controls, I lead reviews with NIST, GAO, and an invited panel of security experts to validate the design and implementation. Next, I worked with the Department of Justice, directly with the chief architect and CIO of DOJ, leading the PKI implementation planning effort and participating heavily in both the Security Architecture and IP dial tone acquisition tasks. I wrote a secure application and PKI implementation guide for DOJ, which was recently expanded for Treasury. Consulting as a secure software and systems assessment team member for Pentagon, I reviewed several troubled high-profile projects and contributed to briefings at the Pentagon and to Congress. As security, network, and systems lead on the Army High Performance Computing Resource Center located at NASA Ames Research Center in Mountain View, I lead certification of systems and network for DREN connectivity and sensitive operations by remote users. Recently, as part of my work on the W3C Efficient XML Interchange working group, I presented at the XML Digital Signature futures meeting at Verisign. My ability to assess security includes the use of my broad knowledge of systems and creativity to effectively game controls and policy in support of security design. I am a CISSP, have NSA ISA certification, and DoD security training.

Performance Engineering: I have long had the privilege of being exposed to scalable system designs, sometimes decades before certain architectural patterns were public knowledge. Key work with integral scalability requirements and solutions includes working with NCR Retail message oriented servers, Lexis large text search engine document processing, writing AOL Buddylist, Instant Images, and supporting database libraries, the Treasury Secure Payment System which had to efficiently process many payments daily while employing layered security and encryption, distributed knowledge processing systems, online auction systems, and a DoD supercomputing center. I worked to help write a buddylist and instant messaging standard at IETF, being the primary scalability proponent and expert. I have been a key participant in the design and standardization efforts for an efficient, binary XML solution (EXI), having designed my own format (esXML), with many innovations, and participating in the relevant W3C working groups. I am currently designing an analogous, but different Efficient RDF Interchange to solve Semantic Technology scalability issues. I have also been trained on Arena, a discrete simulation system, allowing me to use both algorithmic and simulation methods to verify performance. I have written a large paper on avoiding serialization and parsing. I have a broad and thorough view of scalability, performance, and usability, from low level system architecture through algorithms, protocols, and systems to user interaction models.

Intelligence and Intelligent Systems: As known methods evolve, there are more opportunities for computer systems to assist with complex and scalable knowledge management and automation. It is useful to consider a range from helping humans use their intelligence more effectively to systems automating intelligent capabilities. There are several converging components of an effective, intelligent knowledge management capability. These include collaborative publishing, effective interactive communication, knowledge representation, flexible and scalable data / metadata encoding, distributed multi-processing, learning systems, probabilistic reasoning methods, and other intelligent algorithms. Also involved, for some situations, are emerging robotic technologies and methods, often also applicable to non-robotic problems. I have worked and studied in all of these areas, including experience with business and government intelligence activities and problems. Intelligent systems are where my long-term interests lie. I joined AAAI as a life time member some time ago, have participated with W3C semantic technology groups, and my extensive book and software collection has significant presence in this area. I have taken related Stanford AI classes in robotics and probabilistic reasoning and continue to investigate promising directions. I participate in meetings of local interest groups and conferences. I am opportunistic in this domain, building experience to be ready for the boom I see coming, if not helping to move it along, while solving practical problems today.

Usability: In support of my strong views on usability, and the cause of them, I have extensive experience with software, systems, applications, environments, supporting people from neophytes to experts, and related theoretical backing. In 1983, I built a system using a touch screen terminal to allow a Hungarian glass-blower to program a 16 station bulb-forming machine in real time, far different than typical ladder-logic controls. I built numerous interactive applications using a variety of technology. I created something very much like a web browser with scrolling forms several years before general availability. At AOL, I worked with in an environment that was very effective at bringing useful features to the masses in an easy to use manner. Not only simplifying and adding features to my main feature, Buddylist, I also created the Instant Images video IM feature, participated in the AOL Pictures product team, and consulted with head of product marketing on new features. I provided visual design expertise on several key projects, including government and web applications. I have created new kinds of data graphs, being familiar with most existing methods. More recently, I have been working on new knowledge representation interface design, both with common graph interfaces, and some new innovations.

Marketing and Product Management: In addition to usability and application design experience, I have on occasion been successfully involved in marketing and product management throughout my career. I was told by a local business newspaper that my ad received more responses than any ad ever. My Internet marketing plan for one startup was wildly successful, overwhelming the company for weeks. I created the earliest popup advertising system on AOL, a spin-off of the Buddylist feature, quickly leading to millions in revenue. As noted in "Usability", I participated in product management and marketing extensively at AOL. All through my career, I have had a knack for spotting needed applications and working toward them: I tend to be a visionary, conceptualizing and understanding the effects of a product better than most, often years ahead. Not only was this true of person to person video chat, but I founded a startup based on web-based customer support through chat. I independently invented and realized the need for CAPTCHA. I immediately recognized the value of Wiki's, Treemaps, and community services. I'm now focusing on more advanced, automated, and widely usable knowledge management systems.

Management: While I generally focus on the challenging technical and domain specific problem solving in a project, I have necessarily grown my management skills in to a broad portfolio of experience. I always provide effective decision support to the management chain, sometimes assisting in a central way with management even when I'm ostensibly engineering. It is my habit to do just-in-time intensive trade studies frequently. I have a mature view of business opportunities, risk management, and what is needed to efficiently succeed. I have managed teams numerous times, sometimes technically and sometimes with a full lifecycle of management duties. I have some unusual experience with pitfalls of very large government programs and good insight into avoiding them, both from contractor and government management points of view. I have worked in a range of management challenges and environments, small business to large corporation, startups to government contractors and agencies. I have been told by a client that my management of a project was the best that they had ever seen. My soft skills leading coworkers and working with clients are unusually well developed. I have a high EQ, deep understanding in a lot of related areas, and extensive interpersonal experience, having raised six teenagers with related coaching for instance. I have joined PMI in the past, and I have fairly complete knowledge of CMMI.