Andrew Dona-Couch
not your average developer, designer & architect

A beautiful, though somewhat old, picture of Andrew.

Professional Experience

design director
to present
The Ristretto Group

The Ristretto Group builds products that delight, and assists creative technologists doing the same.

Thoughtful design has always been one of my passions. At The Ristretto Group, I am in charge of all product development, starting from the specification and design phase through planning and execution.

technical lead
Cockroach Labs

Cockroach Labs is building a cloud-native, distributed by default, consistent SQL database in pursuit of the goal to Make Data Easy. A rock solid database requires production-grade administrative and operational support. As technical lead of data visualization and the admin UI project, I worked to ensure that the web interface is as reliable as the database it's built to monitor.

My primary focus was designing and developing novel data visualizations and implementing the necessary data collection to support them. I also worked to shore up automated testing, to enable the team to fearlessly develop the admin UI.

technical architect

Leading a cross-functional team of developers, I architected, developed, and delivered a metadata-driven UI engine built on React. This standards-based and forward-looking dynamic front-end is an integral part of the Lifion human capital management platform, a bold initiative to rethink the way HR and payroll software is built. With an agile mindset, our small team was able to take on a complete rewrite, producing a faster and more maintainable project in a fraction of the time taken by the original.

To support the many varied use cases, I designed the UI engine with an emphasis on extensibility. New widgets can be easily added to the system, and this engine formed the basis of React Native apps for Android and iOS. I also led an initiative to ensure complete browser testing using SauceLabs.

integration developer
Stack Exchange

As the first integration developer at Stack Exchange it was my job to fix any pebbles that got in the way of our team's ability to climb the proverbial mountain. My primary role was sales support development, lubricating the integrations between several homegrown systems and the crm. I worked with our executive team to determine project requirements and design solutions and with our development team to see them executed successfully.

In my two years I led a variety of projects, including a trello-like board tracking deals as a better front-end for salesforce, an overhauled commissions accounting system, a sales dashboard showing our team up-to-the minute status information and realtime data replication from salesforce.

technical consultant
Bluewolf Group

While a technical consultant I translated customer requirements into well-tested and maintainable code. The projects varied considerably – I'd be designing responsive and accessible user interfaces one day and complex yet bulletproof business logic the next.

I led the implementation of a continuous integration server based on jenkins and the development of build plugins for grunt and ant, though I also spent time supporting our business analysts with utilities to ease the burdens of configuration.

In mid 2012 I took on leadership of our developer book club from Will Saunders, and I played an active role mentoring junior developers of Beyond to ensure they have the skills they need to succeed.

php developer
Department of Biology
University of Iowa

I designed and built a portal to enable bioinformatics students to run command-line utilities over the web. The legacy system ran a tomcat server and jsp but the rest of the stack at IT Services is lamp, so I was brought in to rewrite it in php.

I developed an active interface based on metadata for each of the cli tools. The binary's location, parameter types and various modes of operation are all configurable for admins, as is the help text and associated tutorials. Users are given a role based on single-sign on with their university login.

We were able to introduce a number of valuable features in iterations after the initial release. After speaking with the developer who took over for me, it seems the system has been flexible and resilient since.

visual c++ developer
Neural Control of Movement Laboratory
University of Iowa

Researchers on Dr. Morton's team look at the mechanisms of the nervous system response to changes in environment, with a particular focus on adaptations to trauma and injury. A significant portion of the quantitative data studied comes from a realtime motion tracking system.

I developed programs supporting a variety of the lab's interactive motion tracking experiments. Because the public api is rudimentary, I designed an object-oriented facade that the lab's researchers (who know some c++) could then use to construct novel experiments.

Selected Projects

A quick, minimal-configuration mock API server.
Straightforward Node.js bindings to the most common LLVM code generation APIs.
Comparative language benchmark graphs built with D3. Data from the Computer Language Benchmarks Game, visualization design by Guillaume Marceau.
Interactive chart to explore the rise of income inequality since 1979, built with D3.

Written Works

Dispatches from the software development underground.
Craft beer reviews and industry commentary.