What do you see as being the 3 hottest technology trends for developers, and why?
Andrej Vckovski: Machine learning, reactive systems and containers. A lot has happened with machine learning in the last few months, both technically and in terms of design. There are new tools, APIs and new generations of frameworks, like Tensorflow. Developers now need to analyze what contribution machine learning can bring to projects and customers. Reactive systems involve technologies and architecture patterns that enable message-oriented systems. They are particularly robust, interactive and reliable. Components like these are now also being integrated into mainstream frameworks. In the area of infrastructure, containers are a growing trend.
What role do container technologies play in web development?
Progress is being made on making infrastructure virtual and more flexible, and this offers software teams scalable and resilient deployment models. But to be able to make the best use of this, we also need corresponding architectures and development tools. Containers also perfectly support new architecture patterns, such as micro-services. They can also increase the level of automation and reproducibility in software-defined architectures.
What are the biggest challenges for developers in 2017?
Are there enough good web developers in Switzerland?
The only real answer to that is ‘no’. We have plenty of web developers, many of them very talented. But talent is something you can never have enough of. Web technologies are being implemented increasingly broadly. Issues that used to be solved on servers are now sneaking into the front end. Browsers are turning into increasingly powerful application platforms, while web technologies are being used for hybrid mobile apps or fat clients. In this environment, the need for good web developers is greater than ever.
What qualifications are particularly valuable for the industry?
We need developers with a solid conceptual background. Specific programming languages and technologies are less important than concepts, paradigms and the ability to get to grips with new technical and specialist topics. Good developers also need strong non-technical skills. Software development doesn’t stand alone as a discipline: effective collaboration with business and domain specialists, user experience experts and designers is a key requirement for successful and sustainable software.
What kind of training should today’s developers be undertaking?
Developers with T-shaped skills are now more important than ever before. Developers need a broad knowledge base that includes both technical and non-technical skills, as well as deeper expertise in their particular areas of specialization. It’s also important for developers to concern themselves with new technologies and trends: for example, most developers are only familiar with the issue of machine learning from their studies, if at all, but this topic will become significantly more important in future, and developers need to be prepared.
What comes after Agile and Scrum?
I don’t think we're finished with Agile and Scrum yet. Agile software development may be an established part of many software companies and clients, but it still holds enormous untapped potential for many projects and companies. If agile development is to fulfill this potential, it needs to be integrated into a suitable environment where the rest of the company is also agile and lean – it’s the only way to truly benefit from the advantages of agile development.
How have customer requirements changed over the last few years in relation to web projects?
Web technologies and using a browser as an application platform have gone through an enormous development over the last few years. That has also involved a lot of new requirements for developers. Customer and user requirements have also increased, together with the new technologies. Furthermore, there has been major progress in the areas of user experience, interaction design and web design. Modern web interfaces today look completely different from how they looked just a few years ago. Customer requirements and expectations have also increased significantly here. Today it is no longer enough, by any means, for a web project to simply cover the required functionality. Applications must be performant, intuitive, simple to use, easy to follow, flexible and scalable. And systems are becoming ever more business critical. This means that the demands are also rising in terms of availability and security.
How much demand is there in the industry for intelligent bots?
Demand is growing. The topic is very much in the news and is getting attention in the mainstream media. That is why a growing number of customers ask for them. This is certainly still very much in its infancy, however. I assume that demand and supply will grow sharply in this area over the next few months and years.
How popular in fact are cross-platform tools such as Xamarin and Phonegap among developers?
Phonegap has gained firm footing in this area over the last several years. Alongside this, new generation tools such as Xamarin, React Native or Nativescript have come along, promising a lot. On the one hand, these tools promise greater efficiency in creating applications for multiple platforms. In some cases, they can actually deliver on these promises. On the other hand, cross-platform tools are also interesting because they allow developers with more classic profiles to transfer to new target platforms. Xamarin, for example, is very attractive for C# developers. And web developers can build mobile apps or fat clients through the use of React Native, Nativescript or Electron.
How widespread is artificial intelligence in the development of apps and websites?
Artificial intelligence is not involved in the development of apps and websites. In this area, the industry still backs natural intelligence 100 per cent. However, artificial intelligence is very much a topic as a component of apps and websites. So far it is has been mainly the big players such as Google, Microsoft or Amazon who are betting on AI and machine learning. However, new generations of tools, algorithms and cloud services are now making it possible to insert AI and machine learning into smaller projects. That will be one of the major challenges for the next few years.
What role does the Internet of Things play in web development?
The limits of the classic web became softer and more flexible a long time ago. Web technologies are used in the area of integration, namely REST APIs. Mobile applications or fat clients can also be built based on web technologies. Hybrid apps and Electron immediately spring to mind. Using web technologies for IoT projects too is just one logical step further.
Is virtual reality already on the table?
Virtual reality is very much on the table, and the outlook is very promising. But I see the greatest potential for a mass application in augmented reality. There has also been major progress here, from a technological point of view. There are a few hot projects in this area, but the major breakthrough has yet to come.
How big a role does the European General Data Protection Regulation play?
The European Regulation on data protection and the current hearings in Switzerland on a revision of the data protection law will certainly have quite a large effect on our customers. On the one hand, they extend the obligations of the data processor. On the other hand, penalties for abuse will become stiffer. We need to make sure we keep things in proportion in the upcoming revision. That is why we are actively involved in Simsa, providing relevant input to the hearings.