Software Artist

Who We Are

David A. Ventimiglia

I have been a physicist, a lecturer, a software engineer, a data scientist, and an architect. Expertise and experience are essential ingredients for the best things in life, but they're not sufficient. The best things in life have quality, quality comes from taste, taste comes from reflection, and reflection is rare.

What We Do

Outcomes Based

We believe in outcomes over hours, driving toward objectives over dawdling with tools, delivery over debate.


Partner with us as Part-Time CTOs to obtain the highest-value outcomes with the lowest-touch engagement, and we will draw your road-map, hire your staff, train them for the happy path, and rescue them from unhappy paths.


Partner with us as Part-Time Architects to obtain high-value outcomes with a medium-touch engagement, and we will design your architecture, choose your technology stack, and develop its demos.


Partner with us as Part-Time Staff Engineers to obtain high-value outcomes with a high-touch engagement, and we will implement your software, test it for functional and non-functional concerns like correctness, robustness, and performance, write its documentation, and develop its training material.

How We Work

Principled Approach

We believe in principles over process and foundations over fads.


The art of software like the art of writing lies in thrift, and the best code is the code that you don't have to write. Apply this principle of Economy by starting not with code but with a data model, which is the foundation of any good software solution. Think not just about what your software should do but also about what it should not do. Translate these concerns into the language of states, state transitions, side-effects, and constraints. Finally, compile these utterances into declarative code using data types, constraints, state machines, observers, and actors. Do these things with Economy, Simplicity, and Consistency, and in the best cases there will be little or no procedural code left to write.


The art of software like any art form is a human endeavor and a social activity. It's not about technology. Technology is merely the medium. Use that medium to communicate a message with concision, not to confound with complexity. Be wary of repetition but not at the cost of coincidental coupling and the mixing of concerns, which must be avoided at all costs. Above all, create software components simply, without cleverness. Do these things with a guileless Simplicity, Economy, and Consistency and in the best cases you will have software that's evergreen because it will be forever approachable.


The art of software is a craft, and craftsmanship improves only with practice. Practice is a matter of repetition, and repetition is a matter of consistency. Try to create software components in the same way, with the same tools, every time. Brook little or no variation. Be alert to innovations but be wary at the same time, and change as few elements as possible from one project to the next. One new element is acceptable. No new element is ideal. Do these things with ruthless Consistency, Economy, and Simplicity and your software will sing.

Why Contact Us

We have a proven track record of delivering outcomes--faster, cheaper, cleaner--that delight our partners.

Q: What technical tools do we use?A: Java, Python, SQL, GraphQL, REST, React, Flutter
Q: What non-technical tools do we use?A: Agile, Kanban
Q: What OLTP databases do we use?A: PostgreSQL, Microsoft SQL Server, MySQL, SQLite
Q: What OLAP databases do we use?A: AWS Redshift, AWS Athena, AWS Spectrum, Google BigQuery, Greenplum
Q: What distributed databases do we use?A: AWS Aurora, Yugabyte, CocroachDB, CitusDB, EnterpriseDB
Q: What API tools do we use?A: Hasura, Postgraphile, pg_graphql, PostgREST
Q: What is our standard OLTP stack?A: React + Hasura + PostgreSQL
Q: What is our standard OLAP stack?A: React + Hasura + Google BigQuery
Q: What Artificial Intelligence (AI) tools do we use?A: Scikit-Learn, spaCy, Hugging Face, AWS SageMaker, PostgresML
Q: What is our standard AI stack?A: React + Hasura + PostgresML
Q: What kind of contract do you write?A: Time-and-materials
Q: How do you bill time-and-materials?A: By week
Q: If you believe in outcomes why do you write time-and-materials contracts?A: Time-and-materials contracts keep our partners engaged while giving them more control over outcomes and cost.
Q: Why do you bill by week?A: Billing time-and-materials by week is a nice trade-off, keeping customers engaged but sparing them irrelevant details.