From 0f6b43c2f92c7fbd3634a4d6b715801b0a4ceffb Mon Sep 17 00:00:00 2001 From: David Thompson Date: Wed, 17 Aug 2022 16:15:38 -0400 Subject: Update resume for the first time in 7 years. --- resume.tex | 180 ++++++++++++++++++++++++++++++++++++------------------------- 1 file changed, 106 insertions(+), 74 deletions(-) (limited to 'resume.tex') diff --git a/resume.tex b/resume.tex index 9e6ee3b..adbe695 100644 --- a/resume.tex +++ b/resume.tex @@ -1,102 +1,134 @@ \documentclass[sans]{moderncv} -\moderncvstyle{casual} +\moderncvstyle{classic} \moderncvcolor{blue} \name{David}{Thompson} \title{Software Engineer} -\phone[mobile]{+1~(774)~289~6629} -\email{davet@gnu.org} -\homepage{http://dthompson.us} +\email{dthompson2@worcester.edu} +\homepage{https://dthompson.us} \begin{document} + \makecvtitle -\section{Objective} +\section{Skills} -To acquire a software engineering position for the purpose of -developing ethical Free and Open Source software. +\begin{itemize} + \item Comfortable working at all levels of the software stack, with + years of experience developing and maintaining web applications + composed of smaller services with REST APIs and web browser user + interfaces. + \item Years of experience working with globally distributed teams in + an Agile environment. + \item Proficient in all parts of the software development lifecycle: + Test-driven development, peer code review, continuous integration, + hosting, deployment, monitoring, and alerting. + \item Extensive experience building and maintaining high performance + production AWS environments using the infrastructure-as-code + methodology. + \item An eye for detail when it comes to writing clean, elegant code + and keeping an organized Git commit history. + \item Strong computer science background in data structures, + algorithms, object-oriented programming, functional programming, + and programming language theory. + \item Well versed in helping less experienced developers overcome + issues with development environment setup, Git workflow, database + schema changes, and more. +\end{itemize} \section{Work Experience} -\cventry{2014--Present}{Web Developer}{Free Software - Foundation}{Boston, MA}{}{Web development for the advancement of the - Free Software movement.\newline{} +\cventry{2021--Present}{DevOps Team Lead}{Vista Higher + Learning}{Boston, MA}{}{DevOps leadership and people management\newline{} \begin{itemize} - \item Helped migrate membership system from defunct in-house system - to CiviCRM. - \item Created new web interface for FSF members to manage their - membership, payment, and contact information. - \item Created JavaScript-based web client for live streaming the - LibrePlanet 2015 conference using Icecast's JSON API and - MithrilJS. - \item Improved central authentication system by contributing patches - to the rubycas-server project. - \item Created an SRT to WebVTT subtitle conversion tool in Guile - Scheme for use with HTML5 video. - \item Extended many Free Software web applications to meet - foundation requirements including CiviCRM, Drupal, Plone, - MediaWiki, Piwik, and GNU MediaGoblin. - \item Served as the Assistant Chief Webmaster of \url{gnu.org} - \item Coordinated development efforts with volunteers worldwide. - \item Wrote and spoke about Free Software publicly on behalf of FSF. -\end{itemize}} + \item Lead effort to build a secure data lake that could be used + by analysts outside of the engineering department. + \item Assisted Security Engineer in meeting SOC2 compliance + targets, including a vulnerability management program. + \item Managed and mentored a junior DevOps engineer. + \end{itemize} +} + +\cventry{2018--2021}{Senior DevOps Engineer}{Vista Higher + Learning}{Boston, MA}{}{DevOps leadership\newline{} + \begin{itemize} + \item Assumed leadership over all AWS accounts and environments. + \item Created and executed runbooks for all major application + upgrade and downtime events. + \item Modernized CI and deployment workflows using AWS CodeBuild, + CodeDeploy, and CodePipeline. + \end{itemize} +} + +\cventry{2017--2018}{DevOps Engineer}{Vista Higher Learning}{Boston, + MA}{}{DevOps with AWS\newline{} + \begin{itemize} + \item Migrated entire production environment from Rackspace to + AWS. + \item Automated infrastructure management with AWS CloudFormation + and the cfer Ruby library. + \end{itemize} +} + +\cventry{2015--2017}{Web Developer}{Vista Higher Learning}{Boston, + MA}{}{Full stack web development\newline{} + \begin{itemize} + \item Integrated speech recognition into LMS, utilizing custom + Sinatra backend and Web Audio and WebSocket APIs for the + frontend. + \item Moved production environment, including databases, from + Rackspace managed hosting to Rackspace cloud. + \item Automated server management with Chef. + \end{itemize} +} + +\cventry{2014--2015}{Web Developer}{Free Software Foundation}{Boston, + MA}{}{Web development for the advancement of the free software + movement.\newline{} + \begin{itemize} + \item Created custom membership management interface within + CiviCRM. + \item Created web client for live streaming LibrePlanet + conference. + \item Wrote and spoke about free software publicly on behalf of + FSF. + \end{itemize} +} \cventry{2012--2014}{Web Developer}{Vista Higher Learning}{Boston, - MA}{}{Ruby on Rails and AngularJS web development.\newline{} + MA}{}{Full stack web development.\newline{} \begin{itemize} - \item Worked in large Ruby (Rails) and JavaScript (AngularJS, - JQuery) codebase with thousands of active users on production - servers. - \item Lead development on single-page JavaScript web applications - using AngularJS. - \item Wrote extensive unit/integration tests for client and - server-side code using RSpec, Cucumber, and Jasmine. - \item Solved major performance problems via optimizing - underperforming database queries generated by ActiveRecord, using - Ruby's profiler and qcachegrind to examine poorly performing code, - using tcpdump/Wireshark to investigate low-level HTTP issues, and - using JMeter and PhantomJS for automated statistics gathering and - stress testing. - \item Worked on HTTP API microservice with Redis caching layer. - \item Helped integrate sitewide XMPP-based text/video chat system - with JavaScript client and specialized authentication backend. - \item Worked with team that highly values peer code review before - applying patches. + \item Learned Ruby and the Rails framework and began contributing + quickly during the launch of a new LMS. + \item Lead development on single-page JavaScript web applications. + \item Wrote extensive unit/integration tests for client and server + code using RSpec, Cucumber, and Jasmine. + \item Integrated sitewide XMPP-based text/video chat system with web + browser client and specialized authentication backend. \end{itemize}} -\cventry{2010--2012}{Intern}{Cyberonic Internet - Communications}{Worcester, MA}{}{Web development and GNU/Linux - system administration.\newline{} -\begin{itemize} -\item Performed MySQL to PostgreSQL database migration for new - customer management and billing system. -\item Administered Debian and CentOS production servers. -\item Developed a multi-location WiFi captive portal management web - application using PHP, JavaScript, and FreeRADIUS. -\end{itemize}} +\section{Free and Open Source Software} +\cventry{}{Maintainer}{Haunt}{} + {\newline\url{https://dthompson.us/projects/haunt.html}} + {Extensible static site generator written in Scheme.} -\section{Free and Open Source Software Contributions} +\cventry{}{Maintainer}{Chickadee}{} + {\newline\url{https://dthompson.us/projects/chickadee.html}} + {Game programming library for GNU Guile.} -\begin{itemize} -\item GNU Guix -- core developer -- Purely functional package manager, - system configuration tool, and GNU/Linux distribution written in - Guile Scheme. -\item Sly -- author -- Game engine featuring live coding and - functional reactive programming written in Guile Scheme. -\item GNU Guile -- contributor -- Implementation of the Scheme - programming language. -\item srt2vtt -- author -- SRT to WebVTT subtitle converter -\item KADE -- contributor -- Microcontroller firmware for arcade - controllers. -\end{itemize} +\cventry{}{Contributor}{GNU Guix}{} + {\url{https://guix.gnu.org/}} + {Functional and reproducible package manager and GNU/Linux distribution} + +\cventry{}{Contributor}{GNU Guile}{} + {\newline\url{https://www.gnu.org/software/guile/}} + {Scheme programming language implementation.} \section{Education} -\cventry{2008--2012}{Bachelor of Computer Science}{Worcester State - University}{Worcester, MA}{\textit{3.7 GPA}}{Recipient of a 2012 - Academic Achievement award\newline Member of Programming Team - (2010-2012)} +\cventry{2008--2012}{Computer Science, B.S.}{Worcester State + University}{\newline{}Worcester, MA}{}{} \end{document} -- cgit v1.2.3