Post Job Free

Resume

Sign in

Software Engineer C++

Location:
East Stroudsburg, PA
Posted:
August 08, 2023

Contact this candidate

Resume:

Sidney R (Sid) Maxwell III

*** ******* ***, **** *********** PA 18301

425-***-****

adysjz@r.postjobfree.com

http://www.linkedin.com/in/srmaxwell3

http://github.com/srmaxwell3

Summary of Qualifications:

● I have 15+ years of excellent software development skills, across a number of application domains, primarily in C and C++, in both the Windows and *nix environments. Though I prefer the richer, more abstract C++ environment, I have written extensively in C, and somewhat less in Python and Go.

● I have hands-on experience in system architecture, team leading, and developing systems through all phases of the product life-cycle.

● I have excellent analytical and communication skills. Technical Expertise:

● Languages: C, (15+ years); C++ (15+ years); bash, ksh, sh, awk (15+ years); Python (2+ years), Go (2 years); Javascript (1 year); SQL; XML; make

● APIs: STL (10+ years), Posix (10+ years)

● Systems: Unix (Linux, Solaris, AIX, HP/UX, Cygwin) (15+ years); Windows (NT, XP, Vista)

(15+ years)

● SCC: Git, SVN, RCS, CVS, Clearcase (15+ years)

Patents:

● Relocatable Instrumentation Tags For Testing And Debugging A Computer Program; US 6106571 A; 2000-08-22; Sidney R Maxwell III

● Method And Apparatus For Analyzing Software In A Language-independent Manner; US 6311327 B1; 2001-10-30; Caine O’Brien and Sidney R Maxwell III Experience:

Tutor (via Wyzant), March 2020 - Present

Tutor for college-level students

Tutor assisting college undergraduates and graduates in the understanding and execution of assignments and projects. Focussing on C, C++, Java, assembly language (X86, X86-64, MIPS, ARM), data structures, algorithms, digital logic, parsing, interpreters, compilers, multi-threading, and multi-processing.

Acronis SCS, Tempe, AZ, July 2022 - June 2023

Senior Software Engineer

Maintenance and development of a backup product for hardened (air-gapped) environments. Contributed to the understanding of an inherited 40M+ line, 1M+ file code base. Windows, Linux, C++, shell.

Prognos.ai, New York, NY, January 2019 - January 2022 Senior Software Engineer

Building infrastructure for handling ingestion, storage, analysis, and reporting of medical data

(10’s GB per month); creating new Web-based products for data analysis. Team lead for the Payer product, a data pipeline between insurers and medical labs, handling PHI data. JSON, CSV data handling in Go, Scala (Spark), shell, Python, AWS. XKL, Redmond, WA, January 2019 - November 2019

Contractor

Development and maintenance of a version of GCC, a cross-compiler for a PDP10-based architecture. Added support for block moves of non-basic data, use of skip instructions for comparison relations, and fixed numerous bugs in code generation. C, PDP10 assembler language.

Nautilus Labs, New York, NY, July 2018 - December 2018 Senior Software Engineer

Translate mathematical models from Matlab to Python (NumPy). Develop data filters to simplify models. JSON, CSV data handling in Python (with/without NumPy). Data visualization using Python/NumPy,

Societe Generale, New York, NY, February 2017 - July 2018 Vice President (Senior Software Engineer)

Member of the Real-Time Market Access (RTMA) team, developing and maintaining back-end support of real-time, low-latency trading on multiple electronic markets. Multi-thread, multi-process, and distributed TCP-IP and UDP networked applications written in C++, using Python for test harnesses.

Peloton, New York, NY, October 2015 - February 2017 Senior Software Engineer

Member of the E-Commerce and Leaderboard teams, developing and maintaining back-end support for internal websites, and the leaderboard functionality of the Peloton bike display. Written in Python, Javascript, and C, using multi-thread, multi-process, and distributed applications.

Royal Bank of Scotland, Stamford, CT, April 2014 - October 2015 Vice President (Senior Software Engineer)

Member of the Rates Trading application development team, responsible for developing and maintaining an internal derivatives trading application (GDS), a multi-thread, multi-process, GUI application written in C/C++, and running on Linux and Solaris.

● Rewrote PV-no-amendments processing (input for Hypothetical PV calculations) to remove the dependency on an Oracle database for interim and final results. Involved Sybase and Oracle SQL. Written in C++ and Perl.

● Added Single-Sign-On (SSO) authorization for per-user access to regulated live rates data. Involved REST-style communication with SSO and live rates services, and new graphical user interface elements. Written in C and C++.

● Developed distribution (and aggregation) of portfolios’ instruments to multiple computation engines, to avoid performance issues. Written in C and C++. Google, New York, NY, September 2012 - April 2014

Senior Software Engineer

Member of the Monarch (cluster monitoring) team, responsible for user quota-specific development, using BigTable (a NoSQL database) and map/reduce techniques, written in C++ on Linux.

● Developed measurement tools for clients’ resource (storage, CPU, and network bandwidth) usage.

● Developed regular monitoring and reporting of client resource usage.

● Developed a tool for supporting clients’ “what if” changes to their storage usage, given changes to their archiving policies.

Perceptive Pixel, New York, NY, February 2012 - September 2012 Senior Software Engineer

Member of the Foundation (platform support) team, responsible for Linux-specific development of driver(s) and application support.

● Ported the (multi-touch) mouse controller from Windows to Linux, using multi-threaded C++ and /dev/uinput.

● In the WeThere (document and application sharing) application, added platform-independent walking and purging of the downloaded assets cache on the local filesystem, writing C++.

Animoto, New York, NY, April 2011 - February 2012

Senior Software Engineer

Member of the Platform team, responsible for back-end services (video slideshow creation).

● Responsible for the legacy back-end, written in Ruby on Rails, fixing issues, minor new development, and automated testing with RSpec.

● Responsible for fixing issues in a Java client.

● Responsible for fixing issues with a MySQL database.

● Designed a new folder/file REST API for an internal storage service, facilitating archiving and access of users’ media, using HTTP.

Bloomberg LP, New York, NY, August 2009-April 2011 Senior Financial Software Engineer

Member of the Swaps team, responsible for the Bloomberg Terminal’s SWPM function

(client-created interest rate derivatives, swaps), written in C, C++, FORTRAN, and Javascript.

● Responsible for database issues and development, test automation, and new feature development.

● Developed and deployed solutions to mitigate widespread database resource issues, affecting in-house, Berkeley DB-based databases, in C and C++.

● Developed and deployed Web service for data compression and expansion, used to reduce database per-record storage requirements, using WSDL, XML, and C++.

● Developed multi-process test system, reducing regression and feature testing from 18+ hours to 2-3, thereby allowing testing to run daily, using sh/bash.

● Developed a new difference tool for graphically comparing test results, using RAD and Javascript.

● Added new ‘hover help’ for swap types, using Javascript and C++. Microsoft, Redmond, WA, May 2008 - May 2009

(Contract) Software Development Engineer

Member of Live Search’s Commerce, Structured Data, and Relevance team, responsible for ranking judgments.

● Developed testing and performance measurement tools for the neural net training infrastructure, using C#, Ruby, and XML.

● Analyzed commerce query augmentation, document features, human ranking judgments, and neural net training data, e.g. for opportunities to automate judgments. Member of the CIS (Cloud) Storage testing team (C#, Ruby, SQL, HTML, XML; analysis).

● Developed testing and performance measurement tools for the Cloud Infrastructure Storage Test Team, using C#, Ruby, SQL, HTML, and XML. Software Development Engineer

Amazon.com, Seattle, WA, July 2006 – May 2008

Member of the Amazon Associates team, performing backend and frontend development and support (C++, Perl, Mason).

● Replaced single-vendor assumptions with support for multi-vendor use of Amazon Associates back-end, using C++.

● Performed maintenance of the Amazon Associates backend, using C and C++.

● Performed maintenance of the Amazon Associates front-end, using Mason and Perl. Acted as liaison between engineering and Amazon Legal, in support of patent litigation. Provided discovery support for several litigations, requiring a search of Amazon’s extensive code base, consultation with various engineering and legal teams, and handling of sensitive information. Member of the Developer Tools team, primarily responsible for source code tools (code statistics, SCM conversion) (C++, Perl, Ruby).

● Developed and deployed regular source code statistics gathering across Amazon’s extensive code base, using LXR, OpenGrok, and etags.

● Developed migration scheme for code in CVS to SVN, written in Ruby. Intel Corporation, Redmond, WA, July 2001 - March 2006 Senior Software Engineer

Member of the Advanced Architectures team.

● Researched, specified, and designed XML-extended Java language, a la C-omega. Investigated existing (proposed) solutions (e.g. E4X, XJ, and C-omega).

● Led the design, and specification of the runtime object model and libraries for Java+XML language.

● Led the design, and specification of run-time object libraries for Java+XML language.

● Designed and began implementation of compiler and runtime support, targeting prototype hardware architecture, for Java+XML language, using PCCTS and C++.

● Investigated cache effects on the performance of JITed managed application (Java) benchmarks, running on simulated hardware.

● Designed, and implemented a performance data collection tool for measuring and characterizing the cache performance of managed applications, using C++. Member of the Microsoft VC++ Back-End (Phoenix) Group.

● Investigated performance differences in native code generated by UTC- and Phoenix-based backends, for managed application benchmarks. Recommended "bang for buck" priorities for Phoenix development. Used internal per-function and per-block count tools for analysis, using C# and CLR.

● Designed, and implemented a performance data collection tool for measuring and comparing the runtime performance of managed applications, using C#, gawk, and bash.

● Designed, and implemented a set of tools to extract and merge C# source, MSIL, and native code for methods from managed applications, using LEX, YACC, C++, gawk, and bash.

● Investigated, and prototyped compiler optimizations to exploit the features of a new Intel microarchitecture. Recommended hardware and code generation changes to exploit cost-effective features.

● Designed, and implemented a new mechanism for the MSVC++ Phoenix back-end generation of X87-based floating-point code. Improves earlier work with UTC, and promises many opportunities for performance improvement, using C++. Member of the Microsoft VC++ Back-End (UTC) Group.

● Designed, and implemented a replacement mechanism for MSVC++UTC backend generating in-line (intrinsic) expansion of the libc routine memcmp, using C; improved performance for Microsoft SQL's TPCC score averaging 1.5%.

● Implemented a replacement for the libc routine memcmp, using C; improved performance for MS SharePoint's documentation search engine averaging 5%.

● Designed, and implemented a replacement mechanism for the MSVC++ UTC backend generation of X87-based floating-point code, replacing the ad hoc method with a more general, integrated model, using C++; improved SPEC floating-point (SPECfp) benchmarks from 0-50%, averaging 2%. Improvements brought MSVC++ into parity with Intel's icl, and answered Microsoft customers' complaints about X87 performance issues. Applied Microsystems Corporation, Bellevue, WA, March 1995 - July 2001 Senior Software Engineer

Technical Lead of the CodeTEST Instrumenter team (2-4 members).

● Lead adoption and maintenance of 3rd party C++ instrumenter, derived from a C/C++ compiler, with the code generation replaced by source output, augmented with additional code for creating externally visible output (a.k.a ‘tags’).

● Lead design and implementation of C and C++ instrumenters.

● Designed and implemented a replacement C instrumenter using an ANTLR-based parser, and supporting a variety of different vendors’ compiler C language extensions.

● Lead design and implementation of a customer build integration solution.

● Designed and implemented gcc/g++ look-alike compiler driver, supporting the insertion of executing the instrumenters as mentioned above in otherwise normal customer builds.

● Point resource for international customer adoption issues (including AT&T, Canon, Cisco, Nortel).

Manager of the CodeTEST Instrumenter team (4 members). Borland, Scotts Valley, CA, March 1991 - March 1995 Senior Software Engineer

Hired to write the Run-Time Library (RTL) for a planned FORTRAN compiler.

● Designed and implemented the I/O library support for the FORTRAN-77 and FORTRAN-90 feature sets.

● The project was canceled when an external customer backed out. Part of the team writing a debugger for OS2.

Developed an interface between the Delphi IDE and Turbo Debugger. Digital Equipment Corporation, Nashua, NH, November 1981 - March 1991 Senior Software Engineer

Developer on VAX DEBUG.

● Wrote a new event processor for handling internal signal processing (breakpoints, tracing, watching) with a variety of generally applicable features (stop, evaluate an expression, evaluate commands, etc.).

Developer on VAX FORTRAN.

● Designed and implemented STRUCTURE and UNION data structures, in support of DEC’s Common Data Dictionary.

● Maintained the back-end (code generator) for VAX FORTRAN.

● Ported VAX FORTRAN to ULTRIX.

● Designed and implemented a FORTRAN compiler driver for ULTRIX. Developer for ULTRIX Languages.

● Responsible for the maintenance of C, F77, and other language tools on ULTRIX. Technical lead for FORTRAN for RISC.

● Sole in-house developer for the 3rd party MIPS FORTRAN (Berkely f77-based) compiler.

● Solely responsible for V1 to V2 development and maintenance.

● Technical lead for 1 additional full-time developer and 2 contractors for follow-on version. Technical lead for DEC-West C compiler.

Education:

● The University of Washington, 1999 - 2001, MS Computer Science and Engineering

(7/8’s completed, GPA 3.9)

● Excelsior College, 1983 - 1986, BS Liberal Studies (Computer Science and Mathematics) (GPA 3.9)

● Hesser College, 1983 - 1985, AS Digital Electronics (GPA 4.0)



Contact this candidate