Igor Tkach, Managing Director at Daxx, communicates with clients from all over the world every day. He helps facilitate the performance of their extended development teams and scale business processes in the most efficient way. His areas of expertise include management consulting, pragmatic marketing, business analysis, and product management. Igor also has extensive experience in Agile project management and is a certified Agile coach.
Many business owners understand the multiple benefits of Agile. Still, they delay its implementation, as are afraid to get something wrong. That’s why we decided to talk with Igor and ask him how to structure a successful Agile development team.
Q: Agile has become popular in different contexts even outside software development. But many people still don’t understand what exactly Agile means. Could you explain what it is and what types of companies can use it?
Igor: There’s no single definition of Agile. It isn’t a set of specific practices but rather a mindset which adheres to a specific philosophy. Agile is a way of thinking. It allows to receive results faster, minimize waste and expenses, make development more efficient, and implement changes with fewer risks. Agile originated from the Japanese Lean methodology and is much wider than the frameworks through which it can be implemented.
By the way, the most popular frameworks are the Agile Software Development Life Cycle (SDLC), Scrum, Extreme Programming (XP), and Kanban. You can learn the essentials of each in an hour, but when it comes to implementation, things start to get complicated. Nevertheless, any initial discomfort you may experience will be well worth it in the end.
Make sure you analyze your business thoroughly before transitioning. If you have a clear vision of what your future product will be, and you know exactly how you’re going to get there and don’t expect any major changes along the way—Agile isn’t right for you. By contrast, when you expect many changes and aren’t sure what the final product should look like—go for Agile.
Agile is a way of thinking. It allows to receive results faster, minimize waste and expenses, make development more efficient, and implement changes with fewer risks.
Q: What resources can you recommend to those of our readers who want to learn the essentials of Agile?
Igor: To get a general understanding of Agile, google the Lean Principles, the Scrum Guide, and the Agile Manifesto. Mike Cohn’s blog is a great resource as well. After that, you can go on with the books “The Lean Startup: How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses,” “Agile Contracts: Creating and Managing Successful Projects with Scrum,” and “The Toyota Way: 14 Management Principles from the World's Greatest Manufacturer.
When you expect many changes and aren’t sure what the final product should look like—go for Agile.
Q: What are the most popular questions prospective clients ask you and how do you usually answer them?
- Which methodology is the best? I often hear this question from business owners who have just started their entrepreneurial careers and haven’t found the methodology that meets their needs yet. There’s no way I could answer this question without thoroughly analyzing your business needs first. This is why at Daxx we offer technical consulting services that help our clients choose a methodology that will work most efficiently in their unique case.
- What tools do you recommend? You’ll definitely need a task tracking tool, a communication tool (for video conferencing and chatting), and a continuous integration tool. Everything else will depend on your business specifics.
- What is the best task tracking tool? So far, I haven’t encountered a better task tracking tool than JIRA. Our clients often combine it with other Atlassian tools like Bitbucket and Confluence. You can also opt for other products like Microsoft TFS and VSTS.
- What is the best team composition? No simple answer to this question either. It all depends on your requirements, your in-house team (which roles are covered), and how fast you need to find certain specialists. If you have a startup, we’ll most probably start by finding a UX designer and a manager. While they’re working on design and business requirements, we’ll be looking for other team members. By the time we hire developers the design and the business requirements are normally ready. But bear in mind that this is only one out of dozens of possible ways to compose a team.
- Which format of software requirements is best and easiest to understand? The format doesn’t really matter. We recommend the user story format, but as long as the team and the product owner have mutual understanding of the requirements, any format is appropriate.
- How can we ensure smooth delivery, team loyalty, and motivation? Create a work environment where your employees can fulfill their potential and are continuously involved in challenging projects. Give talented developers an opportunity to improve their skills and learn something new every day.
I always tell business owners that high-quality developers are expensive everywhere, and quality has to be the most important factor to consider when hiring developers.
Q: You talk to business owners on a daily basis. What are the main reasons they start to look for offshore/nearshore development teams?
Igor: Tech talent shortage on the local market is the main reason that makes business owners search for alternative solutions. Often company owners admit that some tech specialists like Unity 3D developers aren’t available in their countries at all. Additionally, most business owners would like to save costs without harming quality, and this is often possible when you cooperate with remote teams.
Q: What are the top three misconceptions about offshore/remote development teams you’ve encountered?
Igor: Number one would have to be thinking that Ukrainian developers are cheap. But if we compare Ukrainian and Dutch developers, for example, a senior developer in Ukraine will in most cases have a higher salary than a senior developer in the Netherlands. I always tell business owners that high-quality developers are expensive everywhere, and quality has to be the most important factor to consider when hiring developers. That said, there are some savings foreign customers can enjoy when they cooperate with Ukrainian teams—employee tax in Ukraine is only 5%, while in the Netherlands, it’s 30%.
Another common misconception is thinking that starting cooperation with a remote team is easy. In reality, it takes more effort than traditional cooperation, and you should do a lot of preparatory work before building an offshore development team.
First of all, you need to set up the tools necessary for remote collaboration and choose the language of communication. It will most likely be English, which means you’ll have to translate your documentation and promote bilingualism to facilitate the communication between your in-house and remote teams.
Finally, I often encounter customers who think that cooperation with software development teams in Ukraine is difficult due to cultural differences. This simply isn’t true. Ukrainians share the European mentality, and all of our clients, whether they come from Germany or the US, agree that there are no major cultural differences blocking their communication with Ukrainian teams.
Offshore Agile development teams require a distinct kind of management, which means the methods you’ve been using with your in-house team won’t necessarily work.
Q: Can a remote development team perform equally well as an in-house one or even outperform it?
Igor: Definitely. But you’ll have to work hard to make it happen. Offshore Agile development teams require a distinct kind of management, which means the methods you’ve been using with your in-house team won’t necessarily work. That’s why it’s better to cooperate with a tech partner who’ll help you in successful management of your extended team and will always be ready to consult you whenever communication issue appears.
I don’t think there’s one key component that decides whether your cooperation with a remote team will be successful. However... Among the most important ones are regular communication, trust, transparency, consistent processes, and regular feedback.
Q: Does Daxx provide assistance to companies that want to extend their in-house teams with offshore/nearshore developers? What does the process usually look like?
Igor: We have two services that help us set up the process. Most commonly we use the first one, which is called Intake call & Recruitment. The goal of this service is to find out whether the client is ready for the extension of their in-house team. Some clients come with previously developed action plans and don’t need our advice. Others need our assistance. In fact, it doesn’t matter whether you belong to the first or the second group, as we always tailor our services to the needs of the client.
The other service is called Workshop and is applied when the potential customer isn’t ready to start cooperation with a remote team right away because their business structure is too complex. The Workshop is a one or two-day meeting with all company stakeholders during which we detect where we stand now and how to manage the shift most efficiently.
Q: What is the key to successful cooperation with an offshore development team?
Igor: I don’t think there’s one key component that decides whether your cooperation with a remote team will be successful. However, there are many things that contribute to the wellbeing of your cooperation. Among the most important ones are regular communication, trust, transparency, consistent processes, and regular feedback.
Remote cooperation brings multiple benefits such as productivity increase, skills diversification, and improvement of delivery capabilities.
Q: Companies that have always been working as a tight collocated team are afraid of challenges that working with a remote team can bring. In the end, are the challenges worth it?
Igor: Hiring a remote team is a very important strategic decision which will definitely foster innovation and growth in your company. Remote cooperation brings multiple benefits such as productivity increase, skills diversification, and improvement of delivery capabilities. Of course, challenges are possible, but that’s why tech partners like Daxx are here to help you. If you cooperate with us, you don’t have to worry about any of the accompanying risks because we support you every step of the way.