My Journey Into Tech: Becoming a Software Developer

Guest author Anoop Joshi, Head of Product at Float, writes about his journey into tech. Find your inspiration to kick start a career in tech…

“You can learn to write software.”

It’s something I kept on hearing and kept on reading a few years ago. Anyone can learn to write software. Seriously. Me?

I didn’t think I was one of those people. As an ex (recovering!) lawyer, I was the legal advisor not the innovator. Surely I couldn’t be on the other side of the table, doing the ‘cool’ stuff like writing software and building products. Yet, here I am 2 years since leaving the legal profession, and that’s exactly what I’m doing. I learned to write software and now I’ve got a career in technology. It’s been hard work, and there have been bumps, moments of panic and short-lived regret along the way, but I did it.

Here’s how…

Making a change

The thing is, I’ve always loved tech. From video games in the early 90s, to the first time I *ahem* downloaded a song and ‘burned’ it to a CD, to mobile phones, televisions and online gaming (my honours thesis was on Intellectual Property Rights in MMORPGs!) I’ve always been passionate about technology.

However, not for one minute did I think I was the type of person that could actually build and create things. Software was inaccessible and shrouded in mystery to me. I had a limiting attitude that led me to believe that I could never write software because I was on a career path that valued the Arts, not Maths and the Sciences.

Fast-forward to three years into my legal career, working for a large Scottish corporate law firm. Software was an itch I really wanted to scratch and although I was practicing in IP & Technology, the law just wasn’t providing me with the creative outlet or challenge I was looking for.

I started reading about developer bootcamps that had begun springing up in the US and in London, which led to reading about the Ruby programming language, the Rails framework and Javascript. Around the same time, I began to look at free online courses available at Code Academy, Code School and Treehouse. All of a sudden this new opportunity had opened up to me. It was no longer a case of picking up an inaccessible textbook and struggling and failing to learn C by myself. I could take simple, well thought out introductory courses, read books, watch webinars and University classes on the web and pore over answers on Stack Overflow to find solutions. There was a whole ecosystem out there actively trying to get people like me to learn how to write software. It was the perfect time to make a change and so, after a few months of online courses and realising I’d found the intellectual challenge and what I really wanted to do, I made the (very!) bold decision to focus all of my time on learning to write software. So I quit my job.

Lifelong learners

Now what? I’d quit my job. There were lots of jobs in tech in Edinburgh and a dearth of developers so it would be easy, right?

Step 1: Learn to write software.

Step 2: Get a job as a developer.

Step 3: Success. Wrong! If only it were that easy.

Step 1 was never complete in the traditional sense of the word. I’ve met a lot of software developers over the last 2 years and what really stands out is that the better developers are lifelong learners. There’s always something new to learn in software and you never ‘know it all’. Don’t think that you will. At first I thought i’d learn how to write software in Ruby, using the Rails framework, and then I’d be able to build apps and websites to my heart’s content and get a great job! Ha! The truth is, there’s so much more to it. There are constant new technologies (and Javascript frameworks!) to learn, do you focus on the front-end or the backend or do you go full stack? How do you design a better user experience, how can you DRY up the code and which is the best technology to be using for the job at hand.

I love learning new things and if you’re the same, then you’re armed with a mindset to succeed. If on the other hand you’re someone that likes to stick with a single tried and true way of doing things and ignores the world changing around them, then you may want to consider an alternative career (might I suggest the law…?!)

Realising step 1 is a repeating loop, I began to focus on how I could transition to step 2, whilst continuing to remain well aware of my own limitations.

Networking

I’m learning, still learning and always learning some more. I took the hard route of teaching myself the basics and bare minimum to be able to produce a working Rails app, but the online courses only take you so far and I needed to be working on my own ideas and real world projects in order to really understand what it’s like to be a software developer. When it’s on your own time, it’s easy to dip in and out of projects or hold back because time is less of an issue. But how could I get experience without, well, experience, and who would take a risk on an unqualified, self-taught ‘newbie’ like me?

You have to network. It’s something that a lot of people don’t like doing, but it’s crucial if you want to meet the right people. The tech scene in Edinburgh is fantastic and you could easily go to a different event every night and when you do, you’ll see that there are a lot of start-ups and larger companies looking for talent. I went to Tech Meetups and networking events at TechCube and CodeBase to meet software developers working in the start-up community in Edinburgh. This is how I met the team at Float and after a few conversations, I was offered the opportunity to internship with the company and learn how software products are actually built. The key thing for me was, if I hadn’t put myself out there, I’m not sure on paper I would have been such an appealing candidate….

Success?

It’s hard work. It certainly ain’t easy money and you have to have a real passion for solving problems and a relentlessness in understanding processes and how things work if you want to succeed. I’m still new to all this and it’s early days in my career in tech, however, it already feels like the best possible move for me and is validation of the speculative decision I made a few years ago to leave the safety of the legal profession.

That’s my experience – your mileage may vary, but if you don’t try you’ll never know. To me success is continually improving every day. I want to be able to build great products, understand software and be an excellent colleague and mentor to the people I work with. To that end, I’m still learning and i’ll keep on learning new things every day, but that’s what this change is really all about.

And you know what, you really can learn to write software.