Companies are moving to South Florida in droves. We all see it. We’ve all read about it. And a few months ago it reached a tipping point when national media began reporting on it.
According to our latest tech talent report, there are approximately 5.1 times as many new tech jobs annually as there are new candidates.
For local software engineers, this is awesome – the last time I applied for a job, I got 6 serious offers within 4 days – one to lead a division of a FAANG company in California that I didn’t even apply to or send my resume. I literally only applied to 4 local companies. (Hmm… maybe our devices really are listening to us?!)
But as a hiring manager, looking to hire local talent, this presents a significant challenge. There are sources of junior talent (0–1 years experience) coming out of colleges and bootcamps, but the level and skills of those individuals vary widely and the supply of mid-level talent (2–4 years experience) and senior-level talent (5+ years experience) is essentially non-existent.
(Yes, the years I put on here are for reference only – I’ve met developers with 20 years experience that were still clearly junior-level and developers with 2 years experience that could run circles on most mid-level developers…)
So why, with the incredible demand for talent here in South Florida, do many of our best-trained developers take jobs elsewhere?
There are likely many reasons for the brain drain we experience, but I can offer 5 key reasons with a simple fix for each.
- Be Agile: Not all tech companies are created equal. I’ve spoken to several people that work in tech who claim the company they work for “thinks” they are a tech company, but they don’t “act” like a tech company. I had to unpack this a bit. At first, it sounded like spoiled developers that were missing the proverbial ping-pong table at work, but what it really turned out to be was that those companies weren’t following Agile Principles. And one of the Agile Principles is that development teams should be self-organized and any management of the team should be servant-style, not top-down. Well-trained developers know the best way to work and manage their projects and team, so no one outside the team should try to micromanage them. If you’re not truly Agile, you’ll lose top talent fast.
- Pay more: Obviously places like New York and California are going to pay more than here in Florida due to the higher cost of living, but the small savings we get from not having state income tax does not make up for massive discrepancies in salaries. The cost of living in Florida is higher than in Virginia and the Carolinas, yet tech companies in those states are paying more, on average. Our salaries are on par with the national average, but our cost of living is higher. Be willing to pay a bit more for quality tech talent. It is usually well worth it.
- Simplify job requirements: Tech jobs notoriously have the most ridiculous requirements. Let me let you in on a little secret – a good software engineer can learn a new technology quickly. We have to. The technologies we use are constantly changing and no one knows them all. Yet we regularly see job postings for junior developers requiring them to know dozens of esoteric languages, tools, libraries, and frameworks, and miraculously have eons of experience in each one. There are famous stories of people not getting a job because they didn’t have enough experience in a library that they, themselves, wrote. Or job postings requiring 7 years of experience in a framework that is only 4 years old. Get real. Stop hunting for some fantasy unicorn. When I post a job description it is “Seeking junior developer.” This aggravates my HR team, but opens us up to a wide range of talented individuals. Which is what I want: talent. I want someone that can quickly learn and excel at most anything I throw at them. And honestly, if someone has 7 years of experience in anything and is still looking for a junior-level position, you might NOT want to hire that person!
- Set realistic expectations: Not only is the depth of experience often unrealistic or unwarranted, but the breadth of technologies is frequently a source of jokes and ridicule itself! Job requirements often list every technology anyone has ever mentioned in or around the building or on Slack. Yet 90% of the time, you’re just looking for a developer that knows React, Node, and CSS. And that’s it. What else do you need?
- Hire mostly juniors, some mid-level, and very few seniors: Nearly every job posting I read is looking for senior developers. Clearly, these people have never worked with quality juniors and mid-level developers. Seniors are able to solve problems quickly, but we are, without fail, the least productive developers on a well-rounded team. Seniors spend most of their time thinking, analyzing, and planning, but relatively little time actually coding. We are better at architecting a solution, but can leave the coding to the work horses. Just as a good chef has many assistants, so should a good senior developer. Mid-level developers tend to be pretty fixed in their ways, keep their heads down, and just crank out work. Juniors, on the other hand, are eager to learn and experiment. They can’t work as fast as mid-level developers, but they are much more flexible and willing to try and learn new things. Juniors work best when they have a senior developer that can mentor them, whereas mid-level developers work best on their own. A good senior developer can mentor several juniors and manage several mid-level developers. This is the most cost-effective and Agile formula, especially since you can often hire 3 juniors (or 2 mid-levels) for the cost of a single senior. And if their mentor is good, it will take very little of his or her time to mentor these juniors — the time they spend is more than made up for in added productivity.
There is amazing talent and opportunity in the South Florida Tech community. We are thrilled to be a part of this community and to help train and foster new talent within it.
So what can you do to help keep this talent and hire locally? Simply put: hire more juniors and mid-level developers, be realistic about job requirements and expectations, pay more, and be Agile!
Written by Todd H. Albert, Ph.D., Founder and Lead Instructor at Boca Code