What’s the best way for me to transition into a Software Developer from QA?
Posted by userSully1@reddit | AskUK | View on Reddit | 11 comments
Hi all, I am 27yrs old and have been working as a “Software Tester” since 2015 (I’ve had a few other jobs in between this time but working as QA for software companies has always been my main job) and have been at the same workplace for the past 5yrs. I’m looking for a change but instead of going back into testing/ QA I was thinking of trying development instead.
Overall I’d say I have an intermediate understanding of coding and have knowledge on C#, Java, SQL and little HTML. During my time working in QA I have touched on automation, mostly using a programme called TestComplete and bits of Selenium and Playwright.
Probably outdated by now but any I.T related qualifications I have include: - I.T GCSE: Merit (2013) - I.T A Level: D (2015) - C# Object Orientation and Web Development: Distinction (2016) - SQL Developing Software: Pass (2016) - ISTQB Foundation Level
At the minute I’m working on building a portfolio on GitHub to showcase to employers, I only have one previously built basic app on there at present, I also plan on doing some courses on Playwright too.
Does anyone have any advice on the steps to take to transition into a software developer? Is going for a junior dev role my best route?
Thanks
SpiritedVoice2@reddit
Automate as much of your QA work as possible with code - in my day there was a tool called Cucumber you could hook up to a headless chrome browser via ruby or python. Replaced the need for selenium.
Try and get involved in GitHub pr processes at work, code review the work and show an interest in the unit / integration tests because um, you're a tester.
With those two you're putting some actual software engineering in your current role, and building up experience.
Like the other posters say though, just apply for a junior dev position also!
userSully1@reddit (OP)
I did a short course which included some Cucumber a few years back but I can't say I've actually used it in the workplace before. I like the idea of automating as much of my work as possible as I've worked at a couple companies now which have used TestComplete for their test automation, once I got the hang of the programme I was able to automate most of my daily work and have everything running from an excel spreadsheet which was very useful!
I'll look further into the GitHub PR processes and code reviews etc.
SpiritedVoice2@reddit
Yep, but you gotta swap that excel spreadsheet for a JSON or YAML file and a python script to be a software engineer :)
Seriously there's probably loads of opportunities to slip some coding into your work though. I'd recommend python these days and there's a tool called behave which is basically cucumber in python. Could work well if your doing web stuff.
Coding is really only one part of the job too, if you can gain a decent understanding of testing, deployment, builds and then onto architecture and system design etc, then that is what will really set you apart.
In all honesty though you are probably over thinking it. If you have some rudimentary programming experience and 5 years QA experience you're likely more than ready to apply for a junior dev role.
userSully1@reddit (OP)
That's true.. seems like there's an endless amount to learn but its all part of the journey I guess. So you'd recommend learning Python over something like C#? Sounds like you've got plenty of knowledge, what kind of work do you do?
I hope so, I've already applied for a few and have started looking at some C# on Pluralsight in the meantime
SpiritedVoice2@reddit
Ideally try and pick up a bit of both, they will give you very different perspectives!
Python is easier to use as a scripting / general purpose language than C# (though not exclusively, plenty of people doing serious stuff with python).
Personally I feel there is a significant amount of overhead to certain types of work with "heavyweight" languages like C# / Java etc that I'd rather avoid for about 90% of the stuff I do. I've done more than enough Java in my life though!
One thing to consider is cross platform, C# ties you into the Windows ecosystem somewhat, whereas python is cross platform. This gives you more options at this stage of your career.
All my work is Linux based, as it is in a lot of companies (probably the majority). I'd be truly lost on Windows! I feel this is a fork in the path a lot of people take early on in a career that you need to specifically work at to change later.
I very rarely get senior developers from a windows background applying for my jobs, and simarly I wouldn't apply for a windows / C# job myself.
dragonb2992@reddit
Is doing a Computer Science degree an option?
userSully1@reddit (OP)
Hmm I have thought about it but I'm not sure I'd like to go back into studying and I don't think it would be the best option for me right now, I'd rather get an entry level job i.e. Junior Dev and work my way up. However, I'm not opposed to working towards a degree through an apprenticeship for example or online material, do you have any recommendations?
SpiritedVoice2@reddit
Don't quit work and do a comp science degree! You're gonna go back to pretty much square one in three years time with 60k debt.
You're in the job market now and have experience in the field, this is the best place to progress from. Seriously follow my advice and add more software engineering to your current role, under the radar if need be, and at the same time start applying for junior roles elsewhere.
FWIW I run an engineering team in a large corp and do multiple rounds of recruitment per year. I've around 20 years as a developer. This advice I'm giving you is the same I'd give someone at work.
Although if you worked at my place we'd actually give you some engineering tasks and training if you showed an interest in changing roles - so that might say something about your current employer if it's not happening.
userSully1@reddit (OP)
Yeah I agree and that's the biggest thing that puts me off going back to studying now, especially over the duration of 3+ years and I'd rather get my experience from working rather than studying and having to do assignments etc.
OK that's a bit more reassuring coming from someone with your experience, I'll take your advice thank you
thetechguyv@reddit
Yes just start applying for junior dev roles, you're qualified you just need to find someone who will give you a shot. Does your current company not have dev rules you could transition into?
userSully1@reddit (OP)
No unfortunately not.. well, not for my level anyway as they'd only look to hire a more senior level dev if they were to bring anymore on so that's why I was thinking of going down the "self-taught" route till I can land an actual role and get some real work experience