Insights: Agile Software Development
We talked to Jörg Koschitzki, Director of Research & Development at vjoon, about so-called agile software development methods used by the company as well as market trends and future challenges. In this interview, you will find out why empathy and the desire to continuously improve things are crucial in agile software development.
L: Hello Jörg, we are happy that you took your time for our interview. Please briefly introduce yourself and your most important career stages. Of course, the path that has led you to vjoon is particularly interesting.
J: I am Director Research & Development at vjoon and I have been working for the company for two and a half years now. My professional background is in software development and previous professional positions include management positions as CTO in publishing and also in gaming industry.
L: Did you perceive changes – or even arranged for some yourself – with regard to the form of software development during your time at vjoon?
J: Of course. When I joined, vjoon had already started with agile software development processes. I continued to further expand this. As a first step, we brought our quality assurance colleagues closer to the results of the development. At that time, we developed in sprint cycles of two weeks. The quality assurance then started to test the finished developed features within the sprint and started to provide feedback immediately. Additionally, I tried to improve the self-organization of the team. One result of this is the team‘s decision to extend the sprint length to three weeks. We further developed team rules and we pay more attention to our internal communication. Another important success factor has become the so-called refinement meeting. The Product Management presents its wishes for new features in this meeting. Combined with the technical know-how of the developers, stories which ready for implementation result from this exchange.
L: Agile software development has been a trend in the industry for years and is actually gaining ground. How exactly does agile software development look like at vjoon?
J. We are working with the SCRUM framework. SCRUM defines an action framework of best-practice activities, e.g. the already mentioned refinement meeting, a daily a daily StandUp meeting for coordination and some other meeting formats. They serve to intensify the exchange of information between the team members. The SCRUM team includes all participants. Among them are developers, quality assurance employees, product owners as well as localization and documentation employees who create the manuals. SCRUM is a procedure that requires both – forward planning of the next sprint as well as success control of things done.
L: What advantages do you perceive for vjoon in agile software development with the SCRUM framework compared to other methods?
J: Since the know-how of all team members is used, the results will certainly be of improved quality. Besides, the direct and prompt cooperation and coordination with employees from other departments has brought positive effects and minimized friction losses. Compared to classical methods, another huge advantage is the joint awareness for upcoming development tasks.
L: What team roles does agile software development involve, how do they have to cooperate and what do you think are key roles?
J: First of all, everyone in the team counts. I think that key roles should be avoided. For sure, the Product Owner and the Scrum Masrer are important roles within the process.
But furthermore, there are developers, testers – the aforementioned quality assurance staff – as well as stakeholders such as management or business development and – most importantly – the customer and end user of our product. According to SCRUM, employees of other departments involved are developers, too – because they work directly on the product.
L: New kinds of development always require a rethink and in parts also a change of culture in companies. This takes time, money and nerves. At the same time, new opportunities are created. Where exactly do you see vjoon‘s challenges, but also opportunities in agile software development?
J: The greatest opportunity is spreading the know-how over as many shoulders as possible. Our C++-plug-in developers are also developing server-side features with Java. For example, when there are bottlenecks. Challenges, for example, are based on the continuous development of vjoon K4. This has led to areas with program code that could be improved. They already have been approached and must be further approached with a lot of know-how.
L: Which human values and characteristics are especially important in your agile practice when working as part of a team?
J: A certain amount of empathy, willingness to improve things and (self-)reflection as well as fun in working together. Equally important, however, is enthusiasm for the product you develop together and of course, customer orientation helps a lot.
L: How do you personally deal with challenging situations and what successes at vjoon do you look back on with pride?
J: My most important instruments are listening and asking. I am proud of the successful releases I have accompanied since vjoon K4 Version 7.
L: Unforeseen market changes mean that companies have to rethink and adapt their development methods on a regular basis. In the future, it is likely that this will even happen at an increasing pace. How do you see the future of software development? Will there be tendencies towards further forms of development?
J: For sure. Before SCRUM, extreme programming (XP) was very popular. And XP has adopted many good practices, such as pair programming, when designing SCRUM. In the agile manifesto from 2001, which represents the basis of agile procedures, nothing was said about the qualification of participants. The “Manifesto of Software Craftmanship“ has been used since 2009. In addition, many impulses come from “Lean Management” and “Management 3.0”. “Clean Code” also comes to my mind. I expect that new process models will emerge as a mixture of many of these models. These emerging processes stand for future initiatives that we will have to take into consideration and evaluate.
L: Alright. Thank you very much for these exciting insights, Jörg. I wish you continued success in achieving your goals and a successful, healthy year 2019 further on!