Frank Lindecke was the first software developer to move into our think tank for technology & design in 1998 and with him came a completely new subject area. In the following years and with great enthusiasm, Frank and his team members succeeded in establishing software development as a new core discipline at UXMA and raised it to a professional level with impressive speed. His many years of project experience combined with his immense expertise make him a valuable point of contact for his team colleagues, especially in the context of his special field of software architecture.
After more than two decades at UXMA and having founded and significantly shaped the software sector as well as always being ready to share his expertise, we think it's high time to let our Developer Number 1 have his say.
Frank, 21 years is a long time! Do you remember the beginnings of UXMA Development?
Frank: "Of course! At that time, it worked like this: our designers thought up new UI concepts and developed smart ideas, which were then to be implemented by programmers on the customer side. Suggestions were rejected again and again because of the realization on the software side that they would not be feasible at all or only with difficulty. It basically came down to the fact that two different languages were being spoken and this threatened to restrict the creative development processes and hinder progress. In 1998, Michael Arpe said: "Then we’ll just become the developers ourselves! We’ll define the limits of technical feasibility". I had just been hired, fresh out of university, and was faced with these challenges which I met with success. The first years were marked by impressive projects for renowned customers such as Heidelberger Druckmaschinen, AIRBUS and ELAC Nautik. It was a steep learning curve".
From the Developer’s perspective, what developments have impressed or even influenced you over the past 21 years?
Frank: "The web has changed everything. The bursting of the dotcom bubble in 2000 was only a brief interruption in a rapid development. More and more companies wanted to offer their products online and there was a real gold-rush atmosphere where you had to keep a cool head and keep an eye on the essentials. During this time, we learnt a great deal - we discovered and developed software design patterns, we internalized working in processes and automating tests. And we learnt new languages and technologies for designing completely new, previously unseen interfaces.
The most formative experience for me was clearly the launch of the iPhone in 2007. With this product, Steve Jobs completed a process pattern change. By focusing 100% on customer value, the iPhone allowed the web to become an integral part of our daily work and life. Communication itself underwent a profound transformation, the results of which we can now experience every day in ourselves and our fellow human beings.
With the triumph of the smartphone, completely new business fields arose because software had to be usable on the move. The requirements changed radically, app development was and is the magic word. At UXMA, we have retained a high degree of flexibility and use the technologies that achieve the best results for the individual requirements of our customers".
How do you discover new technology?
Frank: "As a software developer, it's essential to be curious about the latest developments and trends on the scene, and to make your own. At UXMA, we are given the necessary freedom to research new developments alongside our project work.
In addition, all developers in our company meet regularly for our traditional Tech-Talk with pizza and pasta, delivered by our favorite Italian. One of our colleagues presents his new findings on a current topic, which usually leads to a lively discussion. This exchange is extremely important for us developers. Of course, interdisciplinary teamwork is an essential recipe for UXMA's success and occasionally a designer gets lost in the group (laughs). But it's important to have an appointment where any topic can be brought up unfiltered and we can exchange ideas in our own 'language' without mincing our words".
How do you write 'good software'?
Frank: "Despite all the enthusiasm and the importance of new developments, one central point has to be kept in mind: ultimately, the truth lies in the code. For this, I like to use the striking example of a bestselling author: in order to write a really captivating work celebrated by critics and only put down by readers after the last page, the author does not need a high-end laptop. This might make writing easier, but in the end the author only needs paper and pen to put his skills and creativity into practice.
This example can be transferred 1:1 to the developer: We must understand our craft from the ground up and combine the ability to think abstractly with creativity. Those who master a programming language like FF usually have no problems getting used to a new language. In addition, it is enormously important to keep the software expandable, to work with abstraction and to put the cart before the horse from time to time". (laughs)
What is the significance of software architecture in this context?
Frank: "It is indispensable. For me, it's like a city map. When I come to a new city, I only see the streets in which I move. But if I have a city map with me, I recognize the buildings and the structure - inner city, suburbs, residential and industrial areas, utilities, etc. - and I can see how they are put together. If this city map can now tell me about new infrastructure, buildings, etc., where I can place them in the overall picture with little energy - i.e. effort - then I understand the architecture of the city.
I also need such a structure as a basis for software development. Only then can I check and ensure that the software meets our quality criteria and will do so in the future: usability, scalability, security, evolvability and performance, to name a few.
The user of our applications ultimately sees only a fraction of what is hidden behind successful software, like an iceberg. The complexity of the structures and processes that ultimately ensure user-centric, easy-to-use functionality is often difficult for the non-developer to see".
What makes working at UXMA special for you?
Frank: "As already mentioned, we don't work in departments, but in interdisciplinary teams with flat hierarchies and plenty of scope for lateral thinking. We are a team of generalists with the skills of highly qualified specialists who question and inspire each other. For this reason, we place special demands, in addition to professional competence, on our developers: even if we can let off steam in our tech talk, we have to be team players the rest of the time, who can communicate their complex thought processes in an understandable way. We don't have any robotic 'code monkeys' who just hammer out their code without any sense of humor.
At UXMA, no day is like the other. We work for customers from a wide variety of industries so we don't have a boring routine. That's what sets us apart. And it's really fun!
Frank, thank you so much for the interview!