The end of the year is approaching, and it’s probably a good time to look back and see what companies have planned and what they have achieved.
Summing up everything I’ve seen recently, I would say that in Serbia, “agile” is no longer bought by the kilo but in truckloads. Conferences are everywhere, new consultants abound, “post-it” notes on the walls, everyone stands for 15 minutes every morning, offices have never looked better and more colorful, and consultants are more abundant than ever. It seems like Serbian companies plan to be nothing short of leaders in the region when it comes to agile transformation.
Of course, as is often the case, the problem isn’t in the form but the substance. The essence is that unless you are a consulting company selling “agile” by the kilo, nobody in the market fundamentally cares whether your team stands for 15 minutes every morning or not.
The question I would like to attempt to answer is how you can be agile without buying it. I will use programmers as examples, but xthese values are universal and can be adapted and applied to any role in a company.
Whenever I talk to people leading programming teams, the questions I ask at the beginning are:
- Why do people study “programming”?
- What motivates them to learn and develop at home, in their free time?
These questions focus on people whose primary motivation for entering IT was not money. These are people who engage in programming because they simply love it. They love that feeling when they don’t know how to solve a problem. They love the feeling when, after hours of struggle, they discover what the problem was. There’s no process that can replace that.
Best of all, such people are not hard to identify. Find a programmer who uses Linux privately instead of Windows, who knows who Martin Fowler is, who can explain why something works, and who has improved their team’s work quality because it motivated them personally.
Professionalism entails doing things you know are right, whether someone asked for it or not.
Experience is another thing we often interpret differently. On one hand, you can have someone with 10 years in the industry doing the same thing for those 10 years, and on the other hand, we have a flood of “Seniors” with 3.6 years of work experience. In such a situation, it again seems difficult to determine who to hire. In fact, even for evaluating experience, you don’t need consultants to introduce a meeting where you spend an hour discussing what was good, what was bad, and what you’ll improve.
Experience in programming is recognized by:
- Recognizing bad practices “at first glance.” When I interview someone, I often give the candidate “bad” code and ask them to do a “review.” Those who are good find problems one after another, without any instructions.
- Personal experience stories. Good programmers have worked with “legacy code” and “legacy systems,” and they are not afraid but are capable of offering systematic answers on how to get out of the current situation. They often use references from well-known authors in refactoring and software testing.
- Taking responsibility. Experienced professionals have numerous examples of taking responsibility for production, sometimes outside of working hours. These can be examples of overtime (which should never be encouraged) or taking responsibility for 24×7 application availability (hopefully, paid).
- Self-reflection. Programmers who have developed during their careers should be able to provide examples of practices they would no longer repeat or decisions they would not make again.
- Ability to make informed decisions. There are situations where it’s necessary to make decisions that do not comply with the highest professional standards. Experienced professionals can identify criteria for these decisions, quantify them, and decide based on that.
One additional piece of advice: Professionalism + Experience significantly impacts a person’s value to the company. If you want to build a serious company, this MUST be reflected in the salary. Don’t fall into the trap of the “average senior salary” if the value the person brings is above average.
Considering that software itself has no value until it represents a solution for which people are willing to pay, the question arises of how “agile” brings value.
Instead of jumping on every buzzword, what you can always do is explore what successful global digital companies do differently. Actions you can take without consultants include:
- Market and competition research.
- Observing how your customers use your product, what problems are being solved that way, and what unexpected steps they take (be prepared to be surprised).
- Verifying assumptions – Instead of a management approach, treat decisions as assumptions, define success metrics, and run A/B tests.
- Define a goal and multiple ways to reach it. Choose the one that provides the fastest feedback and learn from it.
- Create a process that recognizes and eliminates the “7 wastes of software development.”
If you still don’t know how to implement some of these things, send your people to visit large and successful global digital companies. They often have open-door programs.
The final piece of advice I can offer is to bring people into leadership positions who already know what the organization should look like and give them the opportunity to make significant decisions.
The world is changing too quickly to always negotiate and come to a compromise. Everyone should have their place in the company, but there must be a change driver who has personally experienced a different way of working. There is no more old leadership.
In organizations in the digital business, this role is usually called VP Engineering. Of course, depending on the organization, people in “hierarchically” lower positions may have the relevant knowledge and experience to transform other companies. This largely depends on the maturity and size of the company they work for.
Transformation without Consultants
So, the formula for transformation without consultants would be Professionalism + Experience + Value + Leadership = Success?
Of course not. The world we live in is too complex for a simple formula to solve the problem of transformation and market competitiveness.
If you have the opportunity to find a consultant who can prove with their knowledge and experience that they were a significant part of a digitally successful company that competed and innovated in the global market, you can undertake a pilot project with them.
What is important in the end is to get the expected value faster than global competition because the Serbian market is not isolated, and companies that move faster than yours will eventually enter the your market.