Alex enjoys building, mentoring, growing teams and then lead them into deep water to tackle challenging problems 🚀 He is keen to experiment with ways of working and innovative technical approaches. It is important for Alex to be committed to highest standard in every initiative he is involved in 🧨
Every software development team follows practices they learned from the industry. Those practices aim to improve team productivity, address industry risks, ensure clear communication and alignment, and all other kinds of things. Even if you're not related to digital product delivery, you could hear words like Agile methodology, Scrum, or, wider known, Lean approach.
The diversity of those practices alone suggests there's still no holy grail. 90% of all startups eventually fail, a number big enough to prove no practice can guarantee you any sustainable success.
But why is that?
Throughout the years of our work, we realized that any 'best practice' is related only to one or maximum two aspects of the software development work. Yet, there are three of them: team, approach, and process. And they all matter.
Only orchestrated together simultaneously can they bring the desired outcome.
That's how we came up with the TAP system concept.
The TAP system is a comprehensive library suggesting a number of battle-tested practices for all three elements. We select different practices in every case depending on the size of the project, its goals, and the resources to reach them. But we always make sure that every aspect of the workflow – team, approach, and process – is covered.
Most project failures happen because at least one of three key elements of the development flow is missing.
Let’s say a team has strict requirements and expectations, and every member is experienced enough to know what they’re ought to do. Still, the deadlines are often missed, and the overall progress is moving slower than expected. That’s because there was a team and approach, but process practices were not defined clearly enough.
An even more common case is when there’s a great team, everybody commits to the project with passion, but there’s no feasible output. That happens because of the lack of a strategic approach to reach the desired business outcome.
And no matter how good your approaches are and how well you can set up processes, you can’t progress and plan your actions without a strong and well-aligned team (and practices to assemble it).
You can only reach the desired results sustainably by picking the most reasonable practices in all three aspects of software delivery.
Now, let’s take a closer look at each of these aspects.
Team management starts with hiring. In our case, it’s a multi-faceted system covering best practices from job posting to "continuous hiring". It’s aimed at ensuring we always have experts of the right caliber, keep our burn and attrition rates predictable and under control.
Since software development companies usually have a few teams on board, organizing them is also a challenge. It requires role definition in the organization, which should explain the responsibilities of each member and highlight subject matter experts and t-shaped specialists for quick team reorganization should it be requested.
First of all, the approach part of the system explains the documents you should have and follow in order to ensure alignment across an organization. They describe the best way to write product briefs, architecture decision records, and customer journey maps. User stories and acceptance criteria also get into this list.
Then, you’ll have techniques helping your team to make the maximum impact in the organization. Some of them, like CI/CD or architecture review, will make your team progress fast and notice potential problems with the approach before they do any harm. Others, like feature flags, error tracking, or dynamic environment setup, assist with tactical issues. Yet when used together, they make a feasible impact on the team’s velocity.
Finally, the approach is also related to the ways teams work. Getting to the riskiest things upfront and working in small batches helps manage projects and make the deadlines and progress on the product more predictable.
Once you gathered the team and selected an approach, what makes the day of a software development team? The process part of our system answers this question.
Today, during the pandemic, people work remotely and often asynchronously. That forces the industry to go "remote native" and demands following corresponding communication practices to stay in sync at all times. Only by covering every aspect of it, like Slack etiquette, or calendar invite organization, or backlog grooming, can you keep the team progress under the radar.
Then, it depends on the stage your product is on. From the initial preparation stage, through the ongoing execution and delivery, and to the launch, our TAP system has best practices to offer.
With such a huge amount of best practices, how does one select the best combination?
Indeed, this is not the case where more is better. Practices included in the TAP system don’t promise to help you get the outcome you want. But they aim to minimize or address the risks a project might have.
If you’re launching a new major version of your highly popular app, you need to be hyper careful throughout the whole project by having a go-live plan that includes a phased launch.
And on the contrary, if your project is just a small new website, you probably won’t need to automate your code as much as possible, but the product roadmap should better be outlined for easier change management.
However, the TAP system collects dozens of practices. Learning all of them and then picking the best fit for your case manually might be cumbersome. For that, we created Tech Atlas, an interactive guide and coaching tool that organizes practices by goals and playbooks.
Playbooks list the practices necessary to achieve the desired goals and suggest their integration order. It’s an irreplaceable tool for newly joined engineering leaders on our team and an easy way to figure out a best-fitting set of practices for your particular case.
Now, what makes the TAP system different from others’ approaches? How to figure its practical usefulness? We figure that you can see the TAP system as just an even more sophisticated version of any other set of best practices.
So let us share some of our stories where the TAP system helped us achieve brilliant results — not because it’s better, but because it’s opposed to an old type of thinking, an old way of doing things.
This year, a huge company requested our help updating their traveling app. The initial target platform was Android, and we were asked to work with their in-house iOS team. The web version was also in plans later.
Apart from delivering the outcome fast and often to amaze the company leaders and releasing the app within the promised deadline, we focused on delivering maximum impact and eventually secured the next contract for the web version. That became possible thanks to the specific set of TAP system practices we followed.
As we learn and grow, we face new challenges that help us improve the TAP system and supplement it with even more sophisticated yet time-proven practices. And we figured: why should you go the same route and invent the same wheel to succeed?
That’s why we decided to share the TAP system with you.
And to deliver it in the most digestible way possible, we created its interactive version we mentioned earlier: Tech Atlas.
Tech Atlas is a regularly updated and free knowledge base that you can use as a guide in every aspect of software development.
So one way to take hold of the TAP system is to use the atlas. Sign up at www.techatlas.dev to see how it gradually turns into one and only knowledge tool for successful engineering leaders driving business outcomes.
The other way around is contacting us directly. We’re always ready to help you solve your challenges, make the most out of the TAP system and help you get to the point you want as fast as possible.
After all, we’re Brilliant Consulting — and we’re brilliant at consulting.
Use this free 30-minute introductory call to discuss how to effectively use Tech Atlas for your and your team's growth. We usually talk about your current tech stack, team structure, process, pains and most importantly - YOUR GOALS.
Then we can immediately highlight few leverage points that can be used to change things around for you.