Skip to content

Latest commit

 

History

History
84 lines (56 loc) · 2.84 KB

engineering principles.md

File metadata and controls

84 lines (56 loc) · 2.84 KB

Engineering Principles at TotallyMoney

Autonomy

As an engineer, you need autonomy over how you do your job. Whether that’s the way you choose to solve a problem, the technology you use, or decisions on how to architect. As the expert, you are best positioned to make these decisions.

Practices

  • You own what you build (at individual and squad level)
  • Try new things and cross boundaries
  • Challenge yourself
  • Learn by doing (building MVPs, refine over time, don't over-engineer)
  • Don't wait for someone else to solve things

Autonomy...

We Own It

Ownership is the product of Autonomy, because if you have the freedom to choose you also are more likely to believe in your choices. We decide the pace and quality of our work. We own the problem space and know what problem we are trying to solve for the customer.

Practices

  • Know the customer
  • No deadlines
  • Measure your success
  • #no-estimates
  • Be a part of the product
  • Everyone has a voice and can make a contribution

We Own It...


Move Fast and Deliver Value

Set yourself up to be able to deliver the most value for the customer with the least amount of friction. It’s about releasing often and without fear, knowing you can always fix any issue or roll back.

Practices

  • Release often
  • Enable speed through process
  • Good test coverage
  • Quality is a long term enabler
  • Don’t chase perfection
  • There’s nothing simple about simplicity
  • Prioritise the problems that nobody has solved
  • Be aware of services and libraries that can do the heavy lifting
  • Focus on code that enhances the customer experience
  • Use metrics or AB testing to confirm your hypothesis

Move Fast and Deliver Value...


Openness & collaboration

Engineering is a collaborative activity, so share be open and help others where you can. Do not be afraid to show what you don't know. When things go wrong we spend time on achieving tangible, beneficial outcomes, rather than placing blame.

Practices

  • No blame culture
  • Share your failures
  • Be curious and kind
  • Offer your wisdom and seek it in others
  • Maximise learning - from failure, from success, from others
  • Pairing
  • Build consensus
  • Overcommunicate

Openness and Collaboration...


We Care

We care about our customers. Our customers include our friends, our families and our loved ones. Our customers can be deeply personally affected if we do our job wrong.

We care about what we create. We have pride in our work and aim to build products that our customers hold in high regard.

  • We keep up to date with common security issues
  • We don’t log or store customers personal data unnecessarily
  • Customers with different devices are treated fairly

We Care...