Since I made my way through to the industry, I always wanted to go deeper and understand the nuts and bolts of the applications I was working on.That's why after working as a Software Tester and Quality Assurance Specialist for three years I switched my role to a Ruby on Rails Developer and oh boy... It was the best decision in my professional life so far.
I won't lie though – it wasn't an easy process. It required time, commitment, and hard work, but it paid off and was worth every sacrificed evening spent with tutorials and documentation.
I want to share how I did it, because I believe the lessons I learned can be helpful to others that are struggling with their current work.
I wasn't always into software development. I am not the wrote-his-first-line-of-code-at-the-age-of-5 guy. As a matter of fact, I did that twenty-something years later and, prior to that moment, I had nothing to do with programming and software, except of course using it.
I have been struggling for some time trying to figure out my place in terms of my professional life. After a couple of failed experiments in different fields I was able to land a full–time job as a software tester and already then I knew that IT is not the easiest route. It took me some time to prepare for the interview as there were some technical requirements.
But when I got in, I couldn't leave. I got hooked.
In this first serious job I learned a lot in terms of technical skills and how the industry works in general. It turned out that I was kind of good at this, but I always felt that I was not involved at the level I wanted to be. I have always looked up to developers. They were like magicians to me. They made things wondrously work, the applications changed its shape and behavior under their keyboards, but the most important thing – when there was a critical error that crashed the whole application and printed out a whole page of gibberish – they were able to understand it! And I wanted that too.
I asked my brother, who was a professional in the industry, about an entry-level programming language and he had suggested to me a book about Python. I remember that I couldn't understand the first sentence, but I pushed forward and things began to click and find their place in my head eventually.
In the meantime, I felt that I learned enough in my current job and it was a time for a change. I found out about Netguru by accident, in a random conversation by the coffee machine, and after some quick research I decided it is a decent place to continue my career. I decided to take my chances there as a Quality Assurance Specialist and, as you probably figured out, I got in.
A new set of skills
Surprisingly, in this new place my brain suppressed the thought about becoming a software developer for some time as there was a bunch of new stuff to learn. From my current perspective many of these things were key in becoming a good developer in the future. I learned about how to work efficiently in a team, how to take ownership, how to consult ideas with peers and with clients I was working for, how to be a partner for these clients, and how to provide them business value instead of marking tickets as tested and ready for deployment and considering this a job well done.
Around a year later I felt that I still wanted to have a more direct impact on the products we were building. So I talked openly with my leader about wanting to change my role. I didn't know what to expect, but I got their full support, for which I am still grateful. Shortly after I had a chat with someone from the RoR department about requirements, timeline of the change, and things like that. But it was clear from the very beginning that the most important thing for this change is entirely my responsibility – to make sure I have rails skills that are expected from a junior developer.
So when I got home, I took a piece of paper, I put it in front of myself and I started to draw up a plan. I wrote down all the requirements, all my ideas, how to fulfil them, and I assigned every point from that list a deadline. After that, day after day, after I got my infant daughter to sleep, I sat at the desk and no matter how tired I was, and pushed myself to spend at least 15 minutes on learning programming and trying all these things.
And it did work. Around 6 months later I felt ready. I got an internal recruitment interview scheduled with one of the Ruby on Rails developers. Despite making a few mistakes and not answering every question, I passed it and was accepted as a Junior Ruby on Rails Developer.
Once again I learned that, with a bit of determination and some hard work, almost anything is possible.
The role of a Ruby on Rails developer
It didn't take long for me to realise that it was a good decision. Don't get me wrong, our QA department is great. Our QAs are the best damn professionals I know, but for me personally, writing code and watching it change the application and just working (or not) is the most satisfying thing ever.
In the beginning, I was extremely excited about almost any task, small or big, even if it involved many hours of mundane debugging. I was finally doing things I liked for the whole day.
Then, along with gaining experience and learning ruby on rails things, thanks to practice with real-world problems and limitations coming from different sides, I had a chance to evolve from a task-taker to a problem-solver.
Because being a developer at Netguru isn't only about writing code. It's about delivering solutions that solve the right problems, the right way. I'm super happy when, after hours of consulting how a new feature should look, behave, be built, and broken down into tasks, after being involved as a part of a team that wrote this solution and shipped it to production, we hear from the client that it helped their users in some way. That we made someone's life easier. This is the reason I like my job here.
It took me some time to realise that I'm not the only one without a tech background who ended up working as a software developer. Here at Netguru there are a bunch of people who don't have a degree in Computer Science and haven't written their first line of code when they were still in primary school and their stories are similar to mine. What connects us is the belief that with proper motivation, hard work, and a team that plays together, you can achieve what you want. Or learn something new by trying.
So, if you are struggling to find your place or are considering switching from roles, remember that it is entirely up to you. It may take some time. It may be difficult. But it is within your reach. Even if you want to follow a completely different path than you’ve been walking for years now.