Sunday, 23 June 2019

Keep An Idea Bin

Like most people I have way too many ideas: things I want to learn, stuff I want to do or programming ideas & concepts to implement. One of my principles is that I always iterate on everything in my life - things are not perfect, but working on them little by little is progress.

Ideas are very much the same - and they’re fleeting. Many times I had ideas which I regretted never writing down, and I’m sure you’ve all had this too. So that’s what I did. For the last three years, I’ve written down and categorised every single useful idea I’ve had on Google Keep, i.e. the 'idea bin'.

By coming back to these thoughts daily, I can work on the good ones and chuck away (i.e. archive, never delete) the others.

A few rules for this system:

  • When I think of something new, I write it down immediately
  • I try not to think too much about the taxonomy of the thought - I’ll just write down some free-form text - everything can be cleaned up later anyway
  • Neutral: I write down the good or bad ideas as both have value - this way, both good and bad thoughts can be studied
  • Archive, never delete
  • For a brand new thought, I’ll completely avoid researching it until I’m confident I’ve reached the bound of my own creativity - I’ve found that by Googling an idea, you lock yourself into the model of what you find - it's far easier to be mentally creative without seeing somebody else’s rendition
  • Whenever I have some spare time such as walking home, I’ll make good use of otherwise ‘dead time’ and iterate, refine & categorise my notes

In many ways doing this has brought some semblance of order to my life. I tend to be quite disorderly in many ways, but doing this has at least given me back control over the chaos of my own thoughts, which ultimately, is progress.

Saturday, 22 June 2019

I Got A Software Engineering Apprenticeship @ Google (London)

What are Apprenticeships?

So now I’ve had a fair few weeks to recollect, I decided to write this post about how I went for an apprenticeship at Google and got the job. Apprenticeships are relatively new to Google, so the information online was scarce, and I myself am (obviously) inexperienced with this stuff. My goal with this article is to explain what I learned along the way.

First, some context: Last December I was preparing my UCAS application for University. Having spent weeks fussing minutiae of my cover letter, I'd completely lost sight of the bigger picture. I chose my unis, paid the fee, and sent it off thinking I was done with further education until late next year. Looking back, I never properly reflected on my choice. I decided to spend a couple weeks looking at apprenticeships.

Some helpful resources:

Resource URL Apprenticeship Overview Apprenticeship Search
Not Going To Uni

For those who are unaware, or not from the UK, apprenticeships are an alternative to university where a student’s learning is sponsored by a company. As well as working at the company, they spend time at a learning institution. Hopefully under this model, students can gain theoretical and practical skills whereas university does not have the work element. They’re usually balanced around 80% of time for work and 20% of time dedicated to study.

It’s really an individual thing, but I feel that what I really need is practical experience. I know the basics and I want to get out there and make mistakes and learn hands-on.

Long story short, I applied for a place at Amazon, BBC and Google - two companies and one public broadcaster, all of which I’ve heard good things about engineering-wise. Any one of these companies would have provided me the valuable skills & experience I need for the future.

First Contact with Googlers

Fast forward a couple of weeks and I find myself behind a 45 minute phone-screen with a Google Employee from Zurich. Because I could be rejected at any stage, I made the best effort to learn as much as I could from the experience.

Something obvious but useful: The interviewer can’t see what’s in front of you on a phone call. I had sprawling pages of A4 documents on every scrap of data I could gather about Google’s culture, various facts on the software development industry and stories about previous things I’ve done demonstrating the characteristics I felt they were screening for. I can’t express how helpful this was.

The next stage was a technical interview on Hangouts & Docs - the dreaded whiteboard stage. There’s plenty of data out there on Google interviews, but not for apprentices. I made a few assumptions at what they think the limits of my CS knowledge would’ve been and prepared accordingly. When solving problems, I made sure to speak aloud and express my thoughts. The interviewer was friendly, guided me through the process and made time to answer my questions at the end. On the whole, a very positive experience.

Interview Project

An interesting aspect of the application is that I was given a software project to go and complete from a couple of options. You can check out the code on GitHub here:

The Trip To London: On-Site Interview

The on-site interview in London was the best part of the whole journey. I’ve never lived in a city nor have I travelled so far alone so I made sure to make the best of the day by visiting a relative and exploring.
I woke up at 5:00 AM, hopped on a train from Lancaster to London and arrived at Google’s Kings Cross office just in time.

I’d spent the previous few months working on my Grandma’s business, Decoupage Dreams during which I developed many skills that helped with my interview. As well as having to sell my ideas to improve things, I’d also had the opportunity to visit several networking events, further putting me outside of my comfort zone. I believe made the most impact in developing the confidence I needed for the day.

Getting The Offer

The office was awesome, and everything you’d expect from a modern tech company. Although I wasn’t feeling very hungry on the day (thanks to a sizable train breakfast), I did appreciate the offer of food.

So, a few weeks later I got a phone call telling me about the good news. And having had the time to think about it, I couldn't have wanted any alternative option for the future. The opportunity to work in a culture like Google’s, and moving out to London, will undoubtedly give me many life lessons beyond being an engineer.

I’m excited.

Saturday, 15 June 2019

Aannd that's a wrap! My A-Levels are officially over. Time to kick back and relax for a few days. Up next, I'll be working on the website for my Grandma's wedding business. You can check out the current version here. I'm hoping to pick up some new skills on marketing and advertising. I'll also be writing about my experiences in the coming months.