Ask HN: What should I learn?

2 points by skynetv2 ↗ HN
I am a professional with 15+ yrs experience. Unfortunately or fortunately, its not all sw dev exp. I dabbled in management, sw development, sys admin and pretty much anything that came along. I am also stuck in a very niche domain that deals with distributed systems. I know distributed systems are all the rage but I have no system sw dev experience. my sw dev exp is also very minimal.

I find myself unable to get jobs anywhere in the current tech world. I am not a hardcore developer, I have no firm grasp on any one language, I have no large scale projects as proof of my expertise. I know I am really good with programing if I were in a programing position. So I want to build some new skills and also develop a portfolio.

I find myself being pulled in different directions and keep dabbling with Ruby, Python, Go, Rust, Julia, JS and whatnot. I am a Linux guy, been using it for over 20 yrs.

I like systems dev, dist. systems, networks etc. What language should I focus on? What are some projects I can start contributing to in the dist systems space. Thank you for your time. I have C, C++ and Python experience. Most in Python, then C, then C++.

4 comments

[ 2.1 ms ] story [ 16.3 ms ] thread
Java/Ruby/JS forget everything else.
Build a project. Then build another project. Then build another project.

Stop shopping around languages until you've actually made something, even if it's with older tools.

If you know Python, it's an amazing language. Ruby and Javascript are incredibly useful for web dev, but like angersock said, the key is to build projects. Period. If Python's the language you feel most comfortable in, get going with it and don't switch until after a project is complete.

I'd suggest Flask as a starting point if you're looking for web framework experience. Twisted might be more your style if you're looking at highly concurrent networking projects.

'Distributed systems' is a little broad almost- are there any software projects in particular in that space that you're interested in and could develop expertise in? If so, I'd focus there.

Pick a language and put a project in github as a showcase of what you can do