Volg ICTI

Outsourcing development – working with Romania

| Stefan Leijnen | Agile

More and more companies choose for outsourcing or ‘distributed software development’ where part of the team is in The Netherlands and another part of the team is in another country. The reason is often practical: It is hard to find experienced software developers in The Netherlands. In order to understand how distributed development works we regularly visit teams that we work with. Last month we went to Iași in Romania, where we visit Levi Nine.

Location

Iași is the second-largest city in Romania, close to the country border with Moldova. According to Wikipedia, Romania is one of the more larger countries in terms of number of people ( 20 million people, 7th most populous). It is an EU country so administratively it is easy to do business between Netherlands and Romania. However Romania is located quite far east on the map, and relatively unknown to most Dutch people. The city of Iași is home to a handful of universities, a lively student community and a growing number of IT service companies. Like Ukraine, a software development location we visited last year, Romania is called a near-shoring location. It is relatively easy to travel to Romania, there is only a one hour time difference and culturally it is closer to The Netherlands than Asian locations. For clients considering outsourcing, we recommend starting with near shoring first before considering outsourcing to Asia: working remotely over a short distance is difficult enough.

Levi Nine in Romania

We visit Levi Nine, a company with several offices in Eastern and Central Europe (see also our article on Ukraine) that builds and maintains software for (mostly) Dutch clients, and met with one of their teams. We meet the team in their office, in the Levi Nine building just outside the city center of Iași. They are moving to a more central location now, as the number of teams is growing rapidly.

From left to right: Elisa-Letitia (Delivery manager), Tudor (Software architect), Lucian (Front-end developer), Ana-Maria (Senior tester), Stefan (Guest), Iuliana (Back-end developer) & Mihaela (Back-end developer, Team lead)

Working at different locations can be challenging, especially in terms of communication. What advice would you give to those who are starting with out-sourcing or co-sourcing?

It is important for both parties to first acknowledge the downsides of not being in the same office. Teams that are new to this way of working could kick-off the project with more frequent Skype meetings than they do later in the project, in order to establish good initial lines of communication. It also helps to use video rather than just audio, as you can see a person’s facial expression and pick up on non-verbal expressions. You get to associate a person with their voice and face, and this demands attention because it feels like everybody’s in the same room. Both sides should also take time to ask and answer questions until they feel that everything is clear. Even though we all speak English, sometimes a language barrier remains and it’s good to take the time to rephrase things and acknowledge that everything was understood. We as a team also try to be more than the people who execute the requirements, and also think like consultants and end users, trying to help the client in choosing the best technical solution, or presenting alternative ways of solving the problem.

Why is Iași such a popular place for IT service companies?

The city hosts two computer science faculties, and there are other faculties that don’t specifically teach software development, but offer programming courses. For example, students from economy and business administration come into contact with programming and some move on to became developers or testers. Other factors that play a role are the relatively low prices, and the fact that Iași, like Bucharest and Timisoara, is a local hub that attracts talent from all over the region and neighboring Moldova, which is not a EU-member state.

What types of projects do you work on?

We typically have medium to large projects, spanning several months to several years and teams up to 12 people or more. Our clients come from various domains, such as medical, insurance, financial, retail, transportation or e-commerce companies, and we often do a combination of development, testing, maintenance, and support. Sometimes even only one of those: for example, a client asked us to test the software they internally developed, and deliver a test reports after two months of exhaustive testing. At Levi Nine we also work on internal projects for planning, time tracking and HR. Recently we have started on an internal social network, where colleagues can post questions and add tags to it. Each member also has tags associated based on their abilities or knowledge, so when a question relevant to them is posted, they get notified and can meet face-to-face.

What do you expect will happen in the next few years?

 Levi Nine is projected to grow to 300 colleagues by 2021, just in Iași alone. As the market evolves and clients grow, we change with it. In the future we expect to be able to deliver more full-service solutions, for instance integrating .NET back-end development with Devops and BI, with several specialized teams working on the same project. In terms of technology, combining .NET Core with Docker allows applications to be more easily deployed on different operating systems. .NET is heading in an interesting direction towards more open source. In the past we had to use closed third party solutions and integrate them, now we are seeing a free flow of information that is shared, and components that are ready to be extended and that fit into our projects.

Front-end development is an area where changes are ramping up rapidly. Although the technology already exists, in the next few years we expect a boom in “progressive applications”: mobile applications written in web languages such as javascript, that act like native applications. We are organizing internal workshops and experiments to see what is possible with progressive application technologies like react.native and nativescript.

The trend in QA is still moving more towards automated testing. This investment is not always justifiable for short-term projects, but for long-term projects automated performance, security and front-end testing can really help make them less error-prone and better maintainable. We see automated testing frameworks evolving rapidly, for instance with Protractor, which uses Selenium to allow for easily setting up tests for front-end applications.

Visit background

Stefan Leijnen is IT expert at ICT institute, where he and his colleagues check whether projects are going well and give advice how to improve. In the case of outsourced development, we find it very useful to actually visit the teams, even if they are located abroad. By visiting a team early on in the project, one gets a better understanding who the team members are, how they work and what can be expected at the end of the project. If you are currently outsourcing software development and you have not visited yet, you can ask us to join you on your visit and help you ask the right questions.

Image sources: author photo, wikimedia, google maps

Author: Stefan Leijnen
Dr. Stefan Leijnen obtained his Ph.D in Machine Learning at the Radboud Universiteit Nijmegen. He has multiple years of work experience as software developer and researcher. For ICT Institute he helps companies using agile and scrum, getting started with big data and data science and making technology work.