Lead Architect/Developer role involving research, design, implementation, and shipping of software and networking systems, including operating systems, developer/tester toolchains, and communications protocols.
- Primary architect/designer and project leader for various projects improving server availability, performance, and capacity at Bloomberg LP, via improved TCP and IPC utilization; Coverity, Purify, valgrind, and a custom fuzzer to validate code; and Splunk, profiling tools, and heatmaps to analyze effects and performance.
- Shepherded substantial portions of large-scale refactoring of systems-level run-time libraries (mostly written in C and C++) to improve packaging.
- Drove lag time to port a code-generation module, in a Verilog compiler written in C, down from estimated 6 months to nearly nothing via partial automation coded in Lisp.
- Pioneered novel approach to writing test-automation infrastructure using reflection and other techniques.
- Wrote and maintained a widely-used GCC compiler front end and run-time library (“g77”) as a volunteer for the Free Software Foundation.
Recent Systems and Programming Languages
- Unix (Linux, Solaris, AIX) and Windows
- Clojure, C, C++, C#
- Windows Communication Foundation (WCF), TCP/IP, and networking protocols (such as SMTP)
- Shell programming and scripting (such as GNU Bash, PowerShell, Perl, GNU Emacs Lisp)
- Software-development/deployment technologies (such as Git, dpkg, Visual Studio, MSBuild, gmake)
- QA/Test technologies (such as Visual Studio Team Test (VSTT) and Driver Verifier)
- Network and system administration and maintenance (Splunk, Linux, Windows, and Hyper-V)
Recent Professional Experience
Senior Software Architect, Systems Infrastructure, January 2012 — March 2017
Architected, designed, debugged, and implemented core infrastructure protocols, communications software, libraries, and test-architecture infrastructure. Goals included scaling up and out, supporting more clients and more client capabilities, more-reliable infrastructure, and improving developer workflows. Stack included proprietary multi-threaded applications (written in C, C++, and legacy Fortran) with heavy use of shared memory and related synchronization primitives, with support from Git, Subversion, dpkg, Splunk, Coverity, Purify, valgrind, and so on.
Senior Software Developer in Test, Application Virtualization, March 2008 — October 2010
Architected, designed, and implemented Test Automation Infrastructure for Application Virtualization (App-V), focusing primarily on core virtualization components (such as Registry virtualization), by leveraging C# features, such as reflection, and WCF to easily create numerous effective, reliable, and easily-maintained automated tests to exercise the product during early development. Served as Scrum Master. Assessed and made recommendations concerning source-control and test-infrastructure systems under consideration for adoption.
Designed and implemented product-installation testability hooks in the product (in C++) to enable fully-automated failure injection. Found numerous product bugs, including in late-cycle changes that would otherwise have delayed RTM dates, via code review.
James Craig Burley, Software Craftsperson
Compiler/toolchain R&D, IT Support, and Training
Sole Proprietor, August 1989 — March 2008; October 2010 — December 2011
Clients included DRH Internet, Inc., Dallas, TX (client support and software development); Reflexion, Woburn, MA (SMTP server enhancements); Cadence Design Systems, Chelmsford, MA (porting code-generation modules of NC-Verilog from native HP-PA RISC to SPARCv8); Archetype, Waltham, MA (page-layout software development and API documentation); PictureTel, Peabody, MA (wrote high-level assembler for custom video processor); Lehigh University (added Interval Arithmetic support to g77, funded by Sun Microsystems); and (circa 1985) O’Reilly Media, Inc.
- Approximately 10 years’ experience with optimizing-compiler design and internals, run-time libraries, debuggers.
- Over 5 years’ experience with operating-system internals (kernel and filesystem).
- Over 5 years’ experience as a technical writer, including in Lead and Manager roles.
- Work-related nominations and awards include: nominations for the Free Software Award (1998 and 1999); the Award of Distinction from the Society for Technical Communications (STC), New England Chapter (circa 1985); and Prime Excellence Awards from Prime Computer (circa 1980).