<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1621132604871265&amp;ev=PageView&amp;noscript=1">

This post was updated in October 2017 with new information.

Technology is constantly changing. Each year, new programming languages are created and consequently the demand for experience in those languages increases. While some employers have strict requirements about which languages their developers use (if you’re doing this, you may want to reconsider), more companies are becoming open-minded and letting their tech team use whichever technologies they prefer to get the job done.

With education so widely available (the majority of today’s developers are partially self-taught), it makes sense that developers would want to be learning new technologies on the job. In fact, developers in 2017 say that opportunities for professional development are their most important job evaluation criteria. Learning new technologies on the job keeps developers excited about their job, eliminates the risk of them having an out-dated skill set, and may even help them get projects done more efficiently. It’s a win-win for both parties.

Here are a few ways you can let your developers learn new technologies on the job. 

Adopt something similar to Google’s 20% time policy

One of Google’s most well-known benefits is their “20% time” policy, in which they encourage their employees to spend 20% of their time (in addition to their regular projects) working on a side project. Adopting a similar policy within your organization can allow your developers to learn a new language or technology they might not get the chance to do during their other daily work.  

As a follow-up, you could also schedule a monthly meeting or call where your tech team gets together and shares insights about their 20% time project. It’s a great way to open up a discussion, get feedback, and continuously learn.

Let developers switch roles or teams

Spotify allows developers to switch teams/roles (if their manager approves of it) to learn new technologies and skills. It keeps things from getting stale and lets employees truly shine in areas they are interested in.

Create a mentorship program

Mentorship programs are another great way for less-experienced developers to learn something new. Set up new employees with a developer mentor from day one – this will allow them to form a good relationship.

When learning a new technology or language, it’s imperative to have a more experienced developer (the mentor, in this case) do code reviews every so often. This is a great way for the developer to troubleshoot problems and get even better at their new skillset.

Provide a stipend for continued learning

If you have the budget, allowing your employees to have a yearly stipend to spend on education is a great way to allow them to always be learning. This includes activities like online courses, external training or certification programs, bootcamps, hackathons and more.  

As our Director of Product Management once said, "You're in a competitive market where developers are a premium. Developers are hard to get. What are you actually doing to make your development environment stand out? How are you winning developers over?"

2017 hiring landscape


Schedule a 15 minute call

Call +1-877-782-2577 or email careers@stackoverflow.com for answers to any questions you may have