4 core values of a great dev culture

Craig Taub
3 min readJul 1, 2018

--

Every company likes to sell itself on its “engineering culture”, yet there are an infinite number of ways in which to run a business and a dev department. It is a big area of contention as it is very subjective and is often something out of peoples hands (being that usually it can depend on the partnership between business and dev). Also it is easiest to enforce if it comes from the top-down, bottom-up is not impossible just harder.

Over the years I have compiled a list of what I think makes up a really great developer culture. The ideas come from my personal experience but also from the community in form of books, videos etc.

Starting with 4 core (top level) ideas which I do not think are negotiable. The sub-points within these sections are very opinion-based and are akin to implementation. Categorising them was tricky in that some fit into several at once, but I have done my best to sort them. It might not be possible to have all of them at once, but I certainly feel the more you tick the better.

tldr;

  1. Dynamic environment
  2. Openness
  3. Disciplined
  4. Satisfying and motivating

1. Dynamic environment

  • work hard to retrospectively improve bad processes or systems, keeps them flexible (e.g. handling of technical debt, really out-of-date frameworks)
  • keep away from a “fear of failure”
  • open to using new technology or concepts to creatively solving problems
  • encouraged regular discussions (knowledge sharing and sociable)
  • business as a whole is pro-active and open to exploring innovation
  • “egalitarian” in that anyone can work on anything or talk to anyone (within limits, but generally taking initiative met with praise)
  • team participate in occasional hack days or experimenting
  • “Swap control for scale and innovation”
  • don’t just follow your competitors

2. Openness

  • discourage unnecessary sub-divisions of people or information
  • clear communication (if theres a big decision to make, it should not be made in secret)
  • clear trust in engineering
  • encourage collaboration on big ideas/decisions
  • effort to have code styles and architectures clearly documented and kept up-to-date
  • praise taking ownership (over fix/feature/release)
  • friendly and sociable work environment
  • company goals/values clearly understood by everyone and how their work relates to it
  • people feel they can be honest, especially in the case of an error/mistake or gap in knowledge

3. Disciplined

  • “drop scope not quality”, quality is always paramount, never drops
  • testing embraced and respected
  • no arbitrary deadlines (last minute panic should be the exception not the norm)
  • autonomous cross-functional teams
  • features involve engineering early, co-ordinated by a product/project manager
  • “data driven”, decisions backed up by metrics (i.e. lean)
  • should be consistent with your own practices (e.g. if decide to use a “functional style”, do it)

4. Satisfying and motivating

  • “Empowering not controlling” i.e. certain level of freedom
  • career progression, pay and performance reviews
  • solutions based on merit not authority
  • learning on the job is accepted
  • code or features released have a clear benefit to users
  • “Satisfied” for the present
  • “Motivated” for the future

Overall there are quite a few factors which to me lead to a great engineering culture, which in turn leads to high satisfaction and motivation. I feel it is something I will forever be revising and working on. I hope you agree with some of them, even if its just the top level principles.

If you can think of any more please feel free to comment, would love to hear others thoughts on this.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Craig Taub
Craig Taub

No responses yet

Write a response