A guide to developing code as a software engineer working in a team Last updated on May 6, 2019

Development Process

A guide to developing code as a software engineer working in a team

Contents


Design of Implementation

  • Will you implement this according to an established approach used already in the application, or do you need to think about possible implementation approaches?
  • It’s better to spend time on design up-front than to develop some code then have to change it at the review or QA stage.
  • Do you need to do any research, or spike some approaches before starting the code that will be used for production?

Code Conventions

  • Write the code following agreed conventions for style and design.
  • Run the code through a linter, such as RuboCop, before committing it.

Testing

  • Ensure there are tests that cover the positive as well as negative scenarios.
  • If there are multiple variables and possible outcomes, ensure there is test coverage for these possibilities.
  • Manually test the feature you are developing on your development branch before opening a Pull Request or Merging code into the origin branch.
  • Where appropriate, run the entire test suite for that project before opening a Pull Request.

Troubleshooting

  • Communicate any uncertainties and blockers with the team.
  • If a task becomes very complex or raises unexpected issues, then speak to the team about splitting the ticket into multiple tasks.
  • Try not to extend the scope of the ticket, but it may be appropriate to redefine what the focus of the scope is.