Change is inevitable. With the constant development of programming, new technologies emerge and companies that want to stay on top need to keep up with them. This is why the problem of how to introduce new technologies to the company and encourage developers to start using them appears. This article will aim to solve this mystery, presenting a few tips on how to do it efficiently, possibly with the least amount of issues.
On the edge technologies
Introduction of new technology, especially the ‘on the edge technologies’, should start with a presentation of advantages standing behind a particular solution. People in the company should see a Proof of Concept or be presented with an alternative version of an existing application - where the main module is written in the new technology - and a chance to test it. It is worth discussing the success stories of big companies using the said solution. Be prepared to present the technology’s life cycle - some technologies can be deprecated and no longer maintained, which may entail additional risk.
We should be aware that there are also risks such as additional costs, time restrictions or lack of needed experience. At the very beginning, feature delivery efficiency will be lowered. If the technology is still quite new the availability of experts will be limited. What is more, you risk the personal brand of your company, which introduces the risk of a great failure.
On the other hand, the introduction of mature technology, with a well-established market position is a bit easier due to, for example, a vast number of meetups and hackathons. There is also the possibility of pair programming or taking part in workshops with more experienced developers, so a lot of learning opportunities for the developers. With mature frameworks also comes a big community offering constant support.
The big advantage here can be also the presence of leaders that make the process of implementing a lot easier, providing that we have a person that is willing to take over and build himself a team. A senior developer with a team of a couple of people will minimize risk.
The size of your company is also important here. The smaller it is, the easier it should be to change technologies, however, small companies are exposed to a bigger risk. This can be, for example, time waste - when we finally come to the conclusion that the chosen technology does not suit our needs. Also, more stable technologies entail a bigger chance your developers getting bored with them after some time. There is also a risk of losing a customer due to the failure of the implementation process or lack of a positive response from your team causing the entire venture to die. We should also be aware that the 88chosen technology may not solve all of our problems or be too strong for the solution we have in mind (so-called “overkill”).
As you can see, introducing new technology can be intimidating and a risk-bearing endeavour, but it also opens your company to new experiences and knowledge. However, before you start, consider aspects like framework maturity, company size, overall developers’ engagement and interest in the said technology.