
Making the Switch: The Reality of Moving from Windows to Mac for Your Software Engineering Team
If you have a team of software engineers and want to move them to Mac, you will need to consider a number of things before you do so.
If you have a team of software engineers and want to move them to Mac, you will need to consider a number of things before you do so.
Here’s what’s new in our January 2023 Release Notes:
* Tables Columns Sorting Improved
* Reconcile Commits Count Between KPI Card and the Table
* Efficiency Tab Improvements and Efficiency KPI Cards Align
Understanding why software developers leave positions engineering managers to tackle one of the scariest industry-wide metrics – Turnover. It’s a persistent, recurring, expensive issue and it’s making waves with the Great Resignation. There are several ways your company can avoid and mitigate turnover. This includes being aware of turnover triggers and the reasons that go with them. Developers at risk of leaving show plenty of warning signs that you can casually observe and track with software development performance analytics. So, let’s get you up to speed on what to watch for and things your company can do to keep your team together longer.
According to Founder’s Circle, it is not uncommon for high-tech startups to have a 25-30% turnover rate with new hires in their first year of employment. This is corroborated by the Work Institute which indicates that nearly 40% of all turnover in 2018 took place within an employee’s first year. Of these, 43% leave within their first 90 days – logically within probation periods.
The turnover rate for startups is double the industry average (12-13%) according to LinkedIn and the US Bureau of Labor Statistics. Average software engineer tenure at some high-tech giants is not very good, either – averaging under two years. However, the average tenure for developers at Adobe, Oracle, and Cisco is well over five years. Unless the company has a good HR team and solid career paths, lasting two years in a high-profile tech company is practically a ticket to a 20% raise every 2 years, or so.
The so-called Great Resignation has seen a monthly quit rate of 2.9% in 2021 across all industries, especially pronounced in hospitality and retail. However, the quit rate for IT workers has been ticking up gradually since 2014, as shown in the chart below per data from the US Bureau of Labor Statistics. Half a percent doesn’t sound like a lot, but that’s monthly – correlating to an extra 6% turnover per year.
The shorter the developer’s tenure with a company, the less expensive it is (in all regards) to hire a new developer. All the way around though, turnover is expensive and not just owing to the cost of hiring.
That’s a lot of variables. The average wage of software developers in the United States runs around $9,178 monthly or $110,140 yearly. Losing just one month of productivity is costly. However, losing one good developer increases the risk of losing some of their friends and coworkers, too.
Turnover is a difficult issue as it can extend from so many root causes. There are few to no metrics to tell you why software developers leave, only that they are at risk of doing so. Those metrics can provide you an early warning sign so you can begin finding out why. We’ve grouped together the full spectrum of “traditional” reasons by major category and examples of why software developers leave:
(Major Categories and statistics per hrpartner.io.)
Well – what do you expect, seriously? After forcing everyone to work from home for a year then expecting them to come back to the office? We covered this in the very early stages of the COVID lockdowns – as 1) IT staff have telecommuted occasionally for decades, and 2) “Try it, you might like it!” What? Flexible hours? No traffic? No wear on tear on your vehicle? Save $ eating healthier home meals? No one stealing your lunch? No wait time for coffee or the bathroom?
Have teleconferences in your underwear? Oh – well, only if you work at home for CNN…
But everything other than that, save a shitload of money and time? Hell, yeah!
It’s not only wanting to continue working from home, but as Harvard Business Review points out, most of those quitting their jobs are mid-career employees. It’s a employee’s market – with a global shortage of IT staff, why work where you’re not appreciated, getting overworked, not getting promoted, or where you just don’t feel comfortable? The reasons are mostly the same “as before” – we’ve all just had more time to think about our priorities.
The Great Resignation is not without blowback. Companies like Google have looked at cutting the wages of its work from home employees (by up to 25%). If you do the math, that’s still not such a bad deal… but… back to the shortage of skilled developers, Facebook… whoops… Meta… has been trying to poach developers from Apple, Microsoft, and others. This creates a ripple effect of its own.
Aside from their letter of resignation (or hearing it through the grapevine) there are usually a few indicators that a developer is looking for another job – but it’s a lot harder to tell when you’re not working in an office. There are three things to watch out for – Turnover Triggers, Warning Signs, and Performance Metrics.
Recruiters may contact developers completely out of the blue. So, barring contractual obligations, there’s always a turnover risk with your developers. However, when the above warning signs are accompanied by a variety of trigger points – it’s time to get proactive with retention efforts. Turnover triggers include:
Also, not a trigger per se, resume work history can be an indicator, too. It’s practically part of the software development culture for developers to change jobs every two years. If you want to be a great software engineering manager, consider setting up a calendar to track your team member’s 2nd year anniversaries.
Once a developer has it in their mind to leave – the clock starts ticking. It used to be customary for all employees to provide at least two-weeks notice before they departed. Sometimes that got padded with vacation/sick time. However, in the United States, at-will employment provides that,
“..any hiring is presumed to be ‘at will’; that is, the employer is free to discharge individuals ‘for good cause, or bad cause, or no cause at all,’ and the employee is equally free to quit, strike, or otherwise cease work.”
Each country and state has its own laws making this an issue for your company’s legal advisor and HR teams. As such, your only safeguard is to keep an eye on turnover triggers and indicators.
So, the thing here is to not get paranoid or overly sensitive if you see a slight shift in employee behavior. You don’t know everything that is going on in your team member’s lives. They may have had an argument with their significant other – forced to sleep on the couch and drink cold coffee for breakfast. It happens. Health issues, stress with bills, in-laws visiting, night school, etc. can all be behind many of the “warning signs.”
It’s more a matter of a fairly consistent and prolonged (over 1 week) pattern of warning signs that indicates a developer is at an elevated risk of leaving. The problem is that engineering managers and team leaders have a narrow window to identify that they may be leaving and their actually leaving. We’ll get to that very shortly, but the following behaviors are warning signs a developer might flip soon:
Lead time
Velocity
Active days
Coding days
Pushes per day
Churn
Defect ratio
Error count
Test volume
Code complexity
Throughput
Code efficiency
Utilization
Rework
Waste
Responsiveness
Receptiveness
Comments address
Review coverage
Unreviewed PRs
First, it’s important to underscore many of the points Csongor Fagyal makes in Measuring Software Development. Over time, it is possible to objectively measure the normalized code volume created by developers. By extension, it becomes relatively easy to identify unusual fluctuations.
Observable warning signs are likely to be reflected in a developer’s performance metrics.
This is not to say that fluctuations in performance are always indicative that a developer is going to leave. They could owe to any number of things. Otherwise inexplicable fluctuations are good indicators that a developer is having a challenge with something. Whatever the basis of that challenge, if it is impacting the developer’s performance on a sustained basis, you are obliged to investigate.
Now that you know how to identify developers at risk of leaving, you can take steps to keep them on your team.
Our first recommendation is at the heart of what we do at Gitential, but since we first wrote this article we’ve started transforming our software development analytics into an AI-powered Digital Assistant that, among other things, can help you improve retention. Analytics are useful, but the thing about data — the more we get, the greater our expectations for how we can use it and the value we can get from it.
Performance metrics tie into behavioral analytics to detect shifts in developer work habits and are a reliable indicator that a developer is looking for a new job. But, that does depend on Engineering Managers and perhaps even HR Managers to be actively tracking the health of their development team.
A Digital Assistant steps in to fill this gap by automatically providing you the data about your team that you want to see – and providing you real-time alerts or warnings of situations deserving your attention like with sudden, but sustained negative changes in PR Code Review activity, code commit frequency, defect rates, active hours, and other metrics.
Efforts to prevent turnover are all well and good, but not nearly as effective as encouraging high retention. Convincing someone to stay after they’ve thought about leaving plays second fiddle to creating an environment where developers want to stay.
The Tech Revolution is finally over! Um, well – no, no it isn’t. And until we achieve Singularity, there will always be new tech coming down the pike. Considering the time and cost of hiring, investing in retention efforts is essential to retain and grow your development team’s skills. This can be expensive, too – but the following tips provide a few bootstrapping options to help.
A) Career Paths. Most large companies are already structured well-enough to where everyone knows what they need to do (and what conditions must exist) to receive a promotion. Promotions are often tied to degrees, certifications, time on the job, performance evaluations, and possibly other requirements. Continuously integrate new skill sets you know will be needed. The main thing is to keep everyone informed of their opportunities.
B) Incentivize Continued Education. According to LinkedIn, a staggering 94% of employees would stay longer at a company if it invested in their career. Time constraints are the #1 reason why employees don’t continue their education. So, beyond financial assistance, take a look at how you can ease their hours, to pick up the skills your company will need. Many companies have a clause in their employee contracts obligating employees to a minimum term of employment after providing for their training.
C) Apprenticeship and Cross-Training Programs. Apprenticeships have long been part of the make-up of European enterprise. Let someone adept at a skill help train someone who is new at it. Certain skill sets like AI/ML, Data Science, among others will remain in high-demand/short supply. Use in-house resources to help your testers become developers > engineers > managers or AI/ML or Data Science specialists, etc. It’ll be easier for you to hire more testers or developers than AI specialists. Some companies may not recognize apprenticeship programs, so this can help with retention, as well.
A large portion of the coursework associated with software development, data science and machine learning is available for free through the Open Education Consortium (OEC) or for a small fee through EdX. OEC course materials are not always complete and don’t provide any moderation, certification or degree. EdX provides some moderation and certification. There are plenty of other online options to choose from.
For additional help in improving retention, make sure to check out Onboarding Developers: 9 Tips for a 90 Day Program.
As we mentioned, we’ve started making a lot of changes in transforming Gitential from providing developer analytics to an AI-powered Digital Assistant. If the issue of developer retention is important to you, you’ll probably find the following articles useful, too!
Post updated: January 29, 2022
If you have a team of software engineers and want to move them to Mac, you will need to consider a number of things before you do so.
Here’s what’s new in our January 2023 Release Notes:
* Tables Columns Sorting Improved
* Reconcile Commits Count Between KPI Card and the Table
* Efficiency Tab Improvements and Efficiency KPI Cards Align
Here’s what’s new in our December 2022 Release Notes:
* Developing Improvements for On-Prem Data Processing;
* Improving Jira Data Connection;
* Aligning Metrics throughout the Application.