How to Scale Engineers on a Project, Zircon’s Top 5

In my previous blog I examined how, like Cloud computing, working with Zircon allows for scalability.  Now, as promised, here is our Top 5 on the subject.

Our retrospectives (regular team feedback sessions) have a section specially designed to answer this question:

“How would we improve the information and resources available to the project such that a new team member would be able to hit the ground running?”

While this is continually evolving for our teams, we’ve learned key lessons. Here are the current top 5.

1. How to build the environment for this project. This is a link to a space in Confluence that has step by step induction documentation to build the environment.

Depending on the complexity of the project, building an environment for someone arriving to the team can take half a day to half a week – and that is with all the information in place of how to do it. Without the documentation, the time it takes can grow to a couple of weeks. For team scalability, this is one for the larger bottlenecks. A documented induction process allows new developers to hit the ground running. Support is then only requested when it’s beyond the scope of what is already available. In turn, the missing information is added to the documentation to assist the next team members. Adding a new team member does cause a spike of reduced production. The shorter that spike can become, the better the utilisation of team resources.

2. Where is the location of the source control? + How to create a branch using this project’s naming convention.

Knowing the location of the source control is a relatively quick time saver – but the naming convention and how git flow applies to the project is something that is easy to get wrong to start with. If a developer has the confidence that they are starting on the project in the expected manner it can remove a barrier to project entry and strengthen the resolve to start making a positive difference. It helps a new developer put their best foot forwards.

3. What is the technical background information for the project, including requirements and design?

Documentation is vital to help new starters learn fast. Many of our customer’s projects suffer from technical debt, from documentation not being up to date, be it through requirements, designs, test coverage, code comments etc. The more an engineer can learn what is available to use as a resource and what is missing, the sooner they know where they can start adding value. If it’s a project Zircon developed from the start, all of the documents will be available in the expected locations. If this project is supportive in nature, in that Zircon are bug fixing, feature developing or maintaining existing software, then there will be details and links to what is available for use.

4. Read the coding standard – daily code reviews.

A major value in our development philosophy is to teach and learn and to test code early and often. Ensuring that code is up to the coding standard creates easy to engage with maintainable code. The long term benefits of code on a project all being written with the same standards is an issue for quality. When engineers come to the code later on to amend it, when it reads the same style as other code in the system, then the project is easier to maintain in the long run and any engineer who understands the standard can participate on the project. Zircon has built our own tool for daily code reviews that makes it easier to perform the task and all engineers have as their responsibility to ensure their code is tested daily. Often engineers code review across projects, so knowing where to find the coding standard assists with daily code reviews.

5. How to set up the test environment and key test concepts.

Zircon projects utilise Test Driven Development because it saves our client’s time and money and it ensures code is testable upon creation. Beyond the TDD process Zircon engineers also perform performance tests, integration tests, component testing, soak testing and more. Understanding how to interact with the test environment, and knowing what technologies are available in order to meet testing needs for a particular project, improves the speed at which a new member can generate results. As well as being able to perform tests, an engineer can benefit from knowing that the end to end development cycle for the project at hand exists and that they can slot into the workflow wherever needed.

Need a Team Scale Up?

If you’ve found this useful or have other recommendations to help improve project personnel scale up, get in touch.

More From The Blog

IR35, Here it Comes Again…

IR35, Here it Comes Again…

IR35, Here it Comes Again...In 2021 the reform to IR35 Off-Payroll rules is to be rolled out to the private sector. As before the reform will only affect companies that do not meet the following attributes: an annual turnover below £10m fewer than 50 employees or a...

Solving the Resource Conundrum

Solving the Resource Conundrum

Solving the Resource ConundrumPicture this. One minute all is fine and dandy, you have access to all the resources you could possibly need, then bam an unexpected challenge arises. Suddenly you find yourself lacking the capacity to meet the new need. What are your...

Quality – An Aid to Produce Consistent Rubbish

Quality – An Aid to Produce Consistent Rubbish

Quality - An Aid to Produce Consistent RubbishAnother year has passed, and myself and a colleague have hosted a BSI auditor for our annual ISO9001/TickITplus check-up, and in fact this was more than the regular check, in that it was our 3-year re-certification audit,...

The Hazards of Legacy Systems

The Hazards of Legacy Systems

The Hazards of Legacy SystemsBeing the owner of a software system with a dedicated customer base sounds like the kind of position one would like to find themselves in. At least until it gets superseded and you have to face dealing with a legacy system. Many developers...

How to Test Without Access to The Test Environment

How to Test Without Access to The Test Environment

How to Test Without Access to The Test EnvironmentIn many of our previous articles, we have expressed the importance of achieving a high standard of testing. Potentially blocking this achievement, several factors can come together to affect the quality of your...

The Technical Workshop – How To Make Them Work For You

The Technical Workshop – How To Make Them Work For You

The Technical Workshop - How To Make Them Work For YouAnyone experienced in product design will understand just how valuable a facilitated workshop can be. Bringing together a project's key stakeholders into a single space allows for the exploration of diverse...

Developing Software for Safety Related Systems

Developing Software for Safety Related Systems

Developing Software for Safety Related SystemsSoftware systems should always be both robust and reliable, however the moment you introduce a safety element, this need for reliability increases significantly. The level of safety required is governed by the severity and...

How to Choose an Outsourcing Partner

How to Choose an Outsourcing Partner

How to Choose an Outsourcing PartnerHaving recognised a need to outsource, and worked your way through the initial preparations, you are now in a strong position to seek out a suitable partner. Choosing an outsourcing partner is no trivial affair, so taking the time...