I am currently lead developer in a small web dev agency in Manchester, UK. I'd like to improve my skills offering by choosing a technology specialism and doubling down on that until I reach expert level, making me into one of those much discussed T shaped people. I hope this will also help me find a niche if I decide to start freelancing/consulting.<p>- I am currently capable working with PHP, HTML, CSS, JS (Typescript/React/Redux/Node), Objective-C and have dabbled with many others.<p>- I have some experience designing and provisioning scalable architectures on AWS.<p>- I have a strong interest in new and emerging languages such as Go and Rust but have limited experience working with them.<p>- I hope that by becoming an expert I can start contributing back to the chosen technology, related open-source projects and eventually give talks and teach others.<p>- You can see a few examples of the types of projects I have previously worked on here: https://slicebeans.com .<p>I would like to find an interesting (I know this is very subjective) and profitable niche, preferably in an area that has, or will soon have, an expert shortage.<p>A few ideas I've had:<p>- AWS or Google Cloud architect<p>- iOS developer specialising in music streaming apps<p>- Devops consulting for small agencies<p>Any and all advice is gladly received.
When I think of specialist developers, I imagine being specialist in a business domain. This is not to say that being an AWS expert does not have its benefits. But if you do want to specialize, I will suggest going with a business domain. For example, if you are ReactJS specialist today, what guarantee do you have that ReactJS will be hot tomorrow ? Who knows. But if you are an expert in say cryptography, security, finance, healthcare etc, I will bet they are not going anywhere anytime soon.<p>My 2 cents. All the points I made are certainly arguable.
Languages:<p>At some point in your career, the languages that you know stop being as important. Once you know 5-10, you'll pick up whatever your current company uses. You may have favorites, but beyond a certain point further specialization has marginal benefits.<p>Cloud architecture:<p>A good skill to have. Make sure you understand the nuances of distributed computing. There isn't a huge difference between the different cloud providers, though. However, there are enough subtleties with each that some specialization pays off.<p>Music streaming:<p>Not a bad business domain for specialization, with very interesting algorithmic knowledge required. There is a lot of hard stuff here. iOS is probably too specific here.<p>Other stuff:<p>The biggest demand right now (that I've seen, so YMMV) is for machine learning specialists. They are going for about $2M per in acqui-hires, about 4x standard dev. That is a very hard thing to specialize in without a math/research background, but learning the ins/outs of deep learning architectures can pay off fairly well even without a PhD. Jumping from web dev to that might be tough, but I've also seen some demand for web based ML visualization and interactivity. Might be interesting for you to combine with music.
Pick your favorite (the area you tend to find yourself spending more time on) or the one most in demand, high paying, or secure (whichever matters to you).<p>It seems Machine Learning / AI / Data Science (though maybe it's "maturing" after becoming such a hot field), mobile development, React + Redux, etc are what's in demand these days.