Adding a feature


From concept to deployment, a quick overview

by Hansel, Lead Developer at Metric.io / @hanseldunlop

Click through for demo....

What is a feature?

  • User story
  • Might involve many systems
  • Coding / Design / Legal

Deciding what to work on

  • Gut feeling
  • Customer requests
  • Lots of constructive arguments
  • £ £ £ £...

The development process

  • Test driven development!
  • The user story gets turned into a test
  • We let the test guide our progress
  • Lots of small changes, slow steady progress
  • Regular refactoring (three strikes then refactor)

Deploying to production

  • Deployment is hard
  • Professionals automate everything
  • Every code change results in a deploy test

Tools

  • Linux!
  • Vim
  • git / source control
  • Jenkins for continuous integration
  • Nginx > uWSGI > Django > Redis > Postgresql
  • Ansible

Questions?


@hanseldunlop