Michael Cousins
Full-stack staff software engineer and technical leader. Solving users' problems thoughtfully (with tests) for 10+ years. Empowers teams to ship high-quality products and experiences.
Work Experience
Viam
- 1¼ years
- Platform for building and managing smart machines
- Software Engineer 4 (Senior) — Mar 2023 to Feb 2024
- Software Engineer 5 (Senior) — Feb 2024 to present
Planned and shipped a rebuild of Viam's machine configuration UI, leading a team of nine engineers to drastically improve the app's ease-of-use and reliability
Led a multi-team, multi-project effort to move Viam’s web app from a brittle, untested proof-of-concept to a resilient, growth-ready SvelteKit app, digging the app out of tech-debt bankruptcy and unblocking parallel feature development
Switched to Playwright for E2E tests by overhauling CI workflows, reducing spurious flakiness and keeping CI fast while contributions increased
Skilled-up software engineers of varying levels of experience on unit testing, end-to-end testing, continuous integration, and architectural best-practices
Opentrons
- 5½ years
- Open-source liquid handling robots for biologists
- Frontend Software Engineer — Aug 2017 to Mar 2018
- Software Engineer 3 (Mid-level) — Mar 2018 to Mar 2019
- Software Engineer 4 (Senior) — Mar 2019 to Mar 2023
Designed, built, and shipped a reliability-focused rewrite of the OT-2 and Flex robots' control and workflow execution software, unblocking complex multi-system integrations while keeping users' already functioning workflows intact
Architected, developed, and maintained the Opentrons App, the Electron and React desktop app that controls the OT-2 and Flex robots
Prioritized work with my teams' embedded designers and product managers, shipping fixes and features to reduce customer support requests by 30%
Configured and maintained CI and deployment systems for multiple products across multiple languages, operating systems, and CI providers
Keen Home
- 2¾ years
- Smart, connected HVAC products
- Mechatronics Engineer — Nov 2014 to Jul 2015
- Product Engineer — Jul 2015 to Jul 2017
Rebuilt the Keen Home API's auth systems - written in Scala - allowing users to integrate their Smart Vents with Ecobee thermostats and Amazon Alexa
Designed and implemented hardware and software for assembly-line QC fixtures
Created and managed Node.js-based production systems, tools, and tests
Wiley Cousins
- 1¾ years
- Contract software & hardware engineering
- The "Cousins" half — Feb 2013 to Oct 2014
Designed electronics and firmware for wearables and other connected products
Created and taught a 12-week "Introduction to Circuits" class
Open-Source Projects
testing-library/svelte-testing-library
Renders and tests Svelte components for Viam and thousands of other users.
JS-DevTools/npm-publish
Automatically publishes libraries to npm for Viam and thousands of other users.
mcous/vitest-when
Isolates Viam's & Opentrons' UI logic in tests with easy conditional stubbing for Vitest.
mcous/decoy
Isolates Opentrons' core logic in tests with easy conditional stubbing for Pytest.
tracespace/tracespace
Renders fabrication (Gerber) files as SVG on various PCB manufacturers' websites.
Skills
Languages
- TypeScript & JavaScript (Expert)
- Python (Intermediate)
- Go (Familiar)
Testing
- Test-driven development
- UI component testing (Testing Library)
- Automated end-to-end testing (Playwright)
Front-end
- Testable, scalable application architecture
- API data management
- Component-based UI (React, Svelte)
Back-end
- HTTP API design
- Event-driven architecture
Leadership
- Technical skills development
- Project management
Education
B.Sc. Mechanical Engineering
- Northwestern University, class of 2012
- Concentration in mechatronics