Damien Sullivan -- Software Developer
phoenix@mindstalk.net
SUMMARY: Generalist backend software engineer with eight-plus years full time
experience. Strongest in Python, TypeScript, and C++ on Linux. Careful, curious, a
quick learner, test driven. Caltech graduate, well-rounded in math and
sciences. Measurably cautious in my self-assessments. Seeking REMOTE work. US
citizen.
SKILLS:
- Python
- C++
- Linux
- AWS
- SQL (MySQL)
- TypeScript
- REST microservices
- Test-driven development (TDD)
- Mentoring
- Sabbatical | Sabbatical | May 2023 - May 2024
- Took time off to study other things. Spanish, Japanese, meteorology,
urbanism.
- Senior Developer | Deliverr/Shopify | May 2022 - May 2023
- Business: helping merchants move stock to customers
- Role: backend engineer on the crossdock team.
- Techs: TypeScript, MySQL, AWS, Metabase/Snowflake
- Some projects: design of integration with external API; design of scheduling
measurement taking to better judge accuracy of our product information; design
and implemention of allocation for branded products; new defect codes in
database reports; endpoints and errors for better reliability of our
in-warehouse audits.
- Reason for leaving: Shopify bought Deliverr, Shopify sold Deliverr to
Flexport 10
months later, acquisition layoffs.
- Senior Software Engineer | Yepchat | Sep 2020 - Feb 2022
- Business: providing automated phone menus for restaurants.
- Second engineer hired, in a back-end role. AWS Lambda serverless environment.
- Techs: Python, MySQL, Twilio.
- Various cost-saving projects, improving automation and integration of
company processes, e.g. Google TTS, email processing, client scheduling, phone number search.
- Reason for leaving: total layoff due to startup financial constraints.
- Software Engineer | Kinnami Software Corporation | March 2017 - February 2020
- Business: providing trusted timestamping at a large scale.
- Roles included Dev, QA, Sysadmin, and Ops, in a 3-person startup.
- Back-end Python development, on Linux; MySQL; wsgi REST microservices and
standalone programs; Amazon EC2 and S3.
- Had main responsibility for 20-30K lines of Python code.
- Introduced pervasive logging.
- Developed new REST services and APIs as needed.
- Researched and implemented publication via Solidity contract to the Ethereum blockchain.
- Testing and QA of all code; volunteer proofreading of website text.
- Deployment and monitoring on AWS. System administration of development and
production Linux machines.
- Wrote automation shell scripts for cluster tasks: machine maintenance,
code deployment, code monitoring.
- Assisted other developers with dev tools such as Linux, vim, shell, and
git, including mentoring an intern.
- Some exploration of marketing via Google Adwords.
- Reason for leaving: total layoff due to startup financial constraints.
- N/A | Tutor | February 2011 - March 2017
- Part-time tutoring in math and programming.
- C consulting for an early startup, reviewing robotics code for quality.
- Indiana University Bloomington | Teaching Assistant | August 2002 - June 2010
- TAed classes in assembly language and computer architecture, where the
students programmed turtle robots.
- Private math tutoring.
- Mindstalk Consulting | Software Engineer | September 2001 - August 2002
- Self-employed software contracting, Java and C++.
- Cogit Corporation | Software Engineer | July 1998 - September 2001
- Reverse engineered an undocumented suite of Perl/CGI scripts acting as an
internal GUI.
- Debugged and enhanced components of the company C++ machine learning programs.
- Acted as a 'fireman' solving other people's urgent problems.
- Wrote a networked service dispatcher in C++ with dynamically loaded plug-in modules, which was the middle tier of the company's three-tiered web services product, and designed the interfaces and configuration for the dispatcher and modules.
- Participated in intermittent pair programming and peer review, trained junior developers, helped supervise the automated build and test system, and helped guide the company Unix sysadmin.
- Advocated for peer review and open source tools.
- Caltech Seismo Lab | Software Engineer | June 1993 - June 1998
- Various summer and part-time jobs, condensed:
- Data wrangling and processing
- AVS animation of the Northridge Earthquake, used for public information.
- Created graphics for the "Earthquakes in Southern Calfornia" page
- Webmastering, and running early forum software
- (separate job) Using Visual C++ to capture and display movement data from a body suit.
- Corboy and Demetrio | Database Manager | June 1992 - September 1992
Learned and wrote queries for a law firm's database.
- Loyola University of Chicago| Teaching Assistant| June 1991 - August 1991
- Advanced Placement Computer Science (in Pascal) Teaching Assistant.
- Master of Science in Computer Science | Indiana University Bloomington | 2010
- Part of a comp sci/cognitive science PhD program from 2002 to 2010, studying
models of analogy making under Douglas Hofstadter.
- Some of my graduate school courses: computer theory (automata, computability,
complexity); analysis of algorithms; computer graphics; operating systems;
scientific computing; Bayesian analysis; group theory visualization; quantum
computing; mind and evolution; fundamentals of computer languages; agent-based
simulation; concepts and categories.
- Bachelor of Science in Planetary Science | California Institute of
Technology | 1997
In calibrated probability assessments I am in the underconfident minority:
I'm more accurate and knowledgeable than I think I am, or probably sound.
My intellectual interests and reading are very diverse: e.g. urban planning,
immunology, history, evolutionary biology, anthropology, decision and measurement
theory, Spanish, Japanese, etc.
References from Cogit, Kinnami, Yepchat, and Deliverr available on request.