28 January, 2020
Sometimes, developers decide to switch from one field to a completely new one, even after years of practicing a particular stack. In today’s article, we’re going to talk about why this is a thing, how devs and their companies can benefit from reskilling and how organizations can help their devs get through that process painlessly. We’re also going to share some advice for developers that think of reskilling, all with the help of TSH’s devs who already did it.
In one of our most recent articles, we’ve been talking about upskilling in software development. It’s a process in which devs learn new skills related to their current stack. It’s a great way to boost one’s career and become more flexible for your employer.
Today, we’re covering a more extreme form of acquiring new skills – reskilling in software development. Switching from one language to another, moving from frontend to backend and other big career moves such as these qualify as reskilling. We’re going to talk about the nitty-gritty of reskilling for software developers with The Software House’s devs that have succeeded at it.
We’re going to hear from TSH’s head of Node.js Adam Polak, who switched from PHP to Node (among others), Mariusz Richtscheid – a frontend developer turned Node expert, Daniel Stokowiec, who successfully moved from Ruby to the Frontend Team at TSH, Jacek Ciwiś, who switched from PHP to DevOps, and Ania Widera – one of TSH’s latest additions to the Node team, that has previously worked as mobile developer.
Reskilling in software development – reasons
Why do developers decide to switch from one technology to a completely new one?
Being in the right place
“The reason for this was simple – Flash and JS were used for some cool looking apps and that »eye candy« was something that was really important for our clients back in the day.”
New exciting project
For various reasons, developers may find the opportunity to work on a certain project to be very exciting. But it may often require the change of technology. As both PHP and Node are backend technologies, getting into Node didn’t prove very hard for Mariusz.
“Regarding backend technologies, I moved from PHP to Node.js. It didn’t take long due to some side-projects I was working on during my free time. Once I learned those new technologies and the opportunity arose, I simply switched to a new commercial project in The Software House.”
Changes in a company
Daniel Stokowiec, today one of TSH’s most experienced frontend developers, has been playing with various frontend and backend technologies for quite a long time. At some point, he worked as a Ruby dev until The Software House moved towards different technologies. His background made it easy for him to switch to the frontend team.
“While working with some APIs in Ruby, I was also exposed to React, so at a later point, when there was a need, I moved to frontend full-time.”
Jacek has been working with all kinds of projects as a PHP developer, but over time he has also been more and more interested in a different aspect of the development process.
“After a few years, I started to think more seriously about production environments of those apps, deployments methods, hosting, etc. I started using the AWS cloud and that’s how it all started with DevOps. The reason why I’m still looking for new solutions is to find a way to increase app development speed.”
Benefits of reskilling
All kinds of situations can directly cause a developer to make a decision to reskill.
- Changing to a different technology may result in higher earnings in both the short and long term. It’s not a secret that demand for various technologies changes over the years and new exciting technologies and possibilities arise (e.g. the emergence of Node.js and DevOps). If you are more interested in this topic, try PayScale.com where you can compare average market salaries for different types of software developers across the world.
- The belief that there are more interesting projects waiting in a different technology, may not be just situational. According to Mariusz, “there are a lot of modern projects using Node.js. It is less likely that you will end up working on some kind of legacy system.” This also played a part in him switching to Node for longer.
- If developers realize that a certain technology is on the way out, they may start to move away from it to stay on top of the market. The Stack Overflow Developer Survey is one of the good ways to follow industry trends like this. Software companies closely follow such trends and often shape their services based on them, further spurring developers to make changes to their stack.
- Since more and more companies understand just how important it is for a developer to learn something quickly and start putting that knowledge into practice, the ability to quickly reskill looks great on a CV.
There are also certain reasons why businesses themselves can at various points openly encourage their devs to reskill and benefit from it.
- You can cover your business needs basin gon your current resources, without having to hire new developers, which may be very costly.
- You can steer your organizations towards trending technologies. Again, without turning to the costly recruitment process.
- By helping in the reskilling process, you can prevent developer burnout. In a company in which it is easy to change the type of work you do, retention over time is better. And it’s no secret that with the turnover rate of 13.2 percent, software development greatly struggles with retention.
Reskilling – how The Software House helps its devs
There are many things an organization can do to help developers get through the process of reskilling. Here are a few protips based on our experience at The Software House.
- Production-like bootcamps. “Nowadays, we have bootcamps, the whole project-like environment for people to transfer from one tech to another,” explains Adam. It’s a quick and intense way to get up to speed with how TSH works with any given technology, from top to bottom.
- Introductory project tailored to cover use cases that are typical in commercial projects. “Crucial for my transition was the completion of an introductory project tailored so that it covered all most common use cases and features,” says Ania.
- External workshops. At times, when a technology your company moves into is fairly new to it, an external help can be the way to go for your developers. “I participated in a training organized by Bottega IT Minds, which was funded by the company. It really gave me a lot of insight into the technical parts of the Node.js,” explains Mariusz.
- Mentoring. Mentors help developers in the reskilling process on various steps, including the bootcamps, introductory projects and other in-house learning events. “My mentor was an experienced developer who had time to provide me with detailed feedback in the one-to-one manner. I felt safe in the learning process because there was no risk of me ruining anything in the production codebase,” adds Ania.
- Advertising. Nurturing an environment in which it is okay to make such decisions is also important. “We currently even recruit devs with experience in other backend stacks with the intention to convert them to Node.js,” notices Daniel.
- Know your devs. You will be able to direct your efforts well if you make sure that you know what each and every one of your developers actually wants.
“Every few months we ask our devs to fill in a special survey where they can tell us what experience in other (important for the company) technologies they have,” says Adam. It’s just one of many things The Software House does to acquire knowledge about their devs.
“TSH’s help was invaluable. It started after 3 years of working in the company. The management noticed that I was changing my area of interest and gave me the opportunity to develop in this direction. I joined the DevOps department and worked under the care of extremely experienced people,” says Jacek.
“Since the management knew that I wasn’t bound to a specific technology, I was presented with various interesting challenges for me to choose from, right from the early days,” adds Adam.
Want to reskill yourself? A word of advice from TSH’s developers
Thinking about reskilling yourself? Here are a couple things you should keep in mind.
- Today, companies are really interested in developers who can cover the entire technology stack – so-called full-stack developers. But nobody can possibly be great in everything. So what does it really mean to be a full-stack dev? ”A full-stack developer is someone who mastered one field and is proficient in others,” believes Adam.
- Even if your company doesn’t offer a bootcamp, try to find a way to study a production-like environment not only to learn more about the technology in practice, but to study the best practices of your prospective team.
- Learn from those more experienced than you. Finding a good mentor makes all the difference and gives you a lot of confidence as you make your first steps.
Reskilling developers – key findings
Just to recap the most important points, here are the key guidelines for both the company and the developer interested in reskilling.
- Companies stand to gain a lot from reskilling. However, at the very least, they need to take interest in the subject to some extent, to not lose the devs that are interested in changing their technology stack.
- There many things that companies can do help in reskilling, e.g. organising bootcamps and mentoring programmes. But, besides all the initiatives, first and foremost, they need to listen to their developers.
- For a developer to really get into a new technology quickly, a bridge (e.g. participation in a production-like project or bootcamp) that allows them to get from theory into practice-mode quickly and risk-free is important.
Want to learn even more about reskilling? Or perhaps you need a particular type of developer quickly and outsourcing may be on your mind? Contact us and let’s talk about it.