Hacker News new | ask | show | jobs
by mattcdrake 1172 days ago
Here's how I switched from data analyst -> software engineer. I don't do much DevOps, but maybe it'll help anyway. To avoid qualifying every statement, just pretend I wrote "in my experience" or "for me" after each assertion.

As a prereq, try to make sure you enjoy the field you're switching to. This seems obvious, but I've met people that didn't. Learn concepts and build projects in your target field to make sure you're actually interested. I built some silly projects with Node & React, learned enough C#/Unity to make awful 2d games, and solved Project Euler/Exercism puzzles. I started 20x more projects than I finished, but finishing isn't really the point at this stage - you're just aiming for exposure. Once I knew what I wanted, I made a plan and started to execute:

1. I positioned myself to program as much as possible at work. In my org, this was easy - most analysts were already writing Python, R, or SQL every day. I took every opportunity to work on projects where the deliverable was working software instead of a slide deck. Almost every data analyst chose the opposite - so there was little competition for these projects. For example, I ended up being able to debug and fix a production C++ application, just because everyone else avoided the task and I offered to try. This step lasted about 1.5 years for me.

2. I learned and built things in my free time. I read books, watched tutorials, did algorithm MOOCs, etc etc. If I had to do it again, I would spend 1/5 the time (or less) following step-by-step tutorials. They definitely helped (especially with "unknown unknowns"), but stumbling through the silliest of projects helped me retain so much more. I did this in parallel with step 1.

3. I did a CS degree. I detailed my cost-benefit analysis in a blog(1), so I won't regurgitate it here. I don't think this is necessary, but being able to apply to new grad SWE jobs was a boon. I tried making the switch before doing a CS degree and got filtered at the resume stage almost every time. I think degree gatekeeping is dumb, unfair, etc. but it is a real problem constraint that you should consider.

I hope any of this helps. It has been a lot of work, and a lot more work to go...but I'm 100% sure I made the right choice. My email is in my profile if you think there's any help I can offer. Good luck!

(1) https://mdrake.sh/blog/whats_next/