I Have an Minimum Viable Product — Am I done?

As of this year, I have been programming for 40 years. In 1979, I discovered coding on a TI-57. Since then, a lot has changed. The most significant impact is not what you think!

As I quickly transitioned from calculators (TI-58C) to real computers (TRS-80, Commodore 64, PC), new elements became available:

  • Graphics and sounds

  • External devices

  • Networking (Fidonet anyone?)

One can think that technology spawns new possibilities. However, expectations are the real drivers of innovation!

Developers codify user expectations as the 'Definition of Done.' Here's a partial list for your consideration.

  • Available in production.

  • Validated and approved by the product owner.

  • Fast, automated and repeatable deployments without human intervention.

  • Covered by automated tests in the CD pipeline:

    • Static analysis: coding style, language version adherence (ex: ES2016, Java 9), anti-patterns, security

    • 100% unit tests coverage

    • Acceptance tests

    • Performance tests

  • Availability monitoring (ex: Pingdom, Cloudwatch)

  • Infrastructure capacity planning (ex: Datadog)

  • Code flow performance measures (ex: NewRelic)

  • Functional transactions and user behavior auditing (ex: Intercom Platform)

Minimum Viable Products are more sophisticated today than before simply because people expect more from us.

Remy Gendron

Seasoned technologist, founder and CEO of INGENO, an outsourcing software company specialized in SaaS products design and development. Remy worked, over the last 23 years, at many hyper growth tech companies such as Taleo, where he oversaw the scalability and performance challenges associated with hundreds of millions of daily business transactions.

Previous
Previous

How do we find good software?

Next
Next

Customer Centric Leadership