All Case Studies Design Development Interviews Our Way Project Management

How we use @pivotaltracker, @circleci, @airbrake and @github in our web dev process at Netguru

We have a couple of interesting and well tested processes that come together as a very low overhead, high transparency and agile way of building software.

We have a couple of interesting and well tested processes that come together as a very low overhead, high transparency and agile way of building software.

Here are the ingredients:

  • only one branch - everything goes to master. We trust our people to create good code and recognize that the worst case scenario is that we would have to issue a fixing commit asap to the master. The only branches we have are those indicating different stages of our process and “where” are the various servers, i.e.: staging, beta, production
  • strict code review - we use a simple internal code review app that basically forces us (by blocking automatic staging deployment) to review every single commit by someone else on the team (not by a lead developer, but a teammate)
  • continuous integration - every commit goes through CircleCI CI server and if it fails the next step is not being run - you are supposed to drop what you are doing and fix the build
  • automatic deployment to staging - if all goes well (there are no rejected code reviews or failed builds) EVERY commit is being pushed to staging - all the stakeholders know that “what is on staging is the current version” - no more asking “where are we”, “is this done”, etc.
  • strict pivotal tracking - every commit is supposed to be connected to a pivotal story and everyone is supposed to have ONE and only one started story on PT. We use pivo_flow - a simple command line tools that helps us remember to tag commits
  • regular production deployments - as much as possible we try to do weekly or biweekly production deployments. By keeping the codebase clean and by making sure we realize that what we commit can and will go to production soon we are able to push the code out asap. This gives us and all the stakeholders a steady feel of visible progress (kanban style)
  • project chatroom - all the above is being tied together in a project chatroom on hipchat that receives all notifications from the various tools and also from airbrake.io (in case of any exceptions) - we also use it for day2day communication with the team
  • weekly updates - everyone on the team writes a weekly update email on Friday to let everyone else know what she/he accomplished, what’s planned for next week and if there are any problems

I think that roughly summarises the ingredients - while each one of them is pretty straightforward and simple - all together they provide us with a very robust and reliable system with an extremely high level of visibility and agility.

What kind of tools do you use?

 
READ ALSO FROM Our Way
Read also
Need a successful project?
Estimate project or contact us