I am an engineer in Chrome, the open source web browser developed by Google. Specifically, I work on Blink, the rendering engine used by Chrome. A rendering engine could be described as the ‘window into the internet’ - it takes the code that makes up a web page and turns it into the pixels you see on the screen when you’re browsing the web. My job involves writing code, writing and running tests to make sure my code doesn’t break anything, reviewing other people’s code, and debugging - i.e. trying to figure out why some piece of code isn’t working as it should.
I grew up an only child in a small town called Wolumla (population 366). I attended Eden High School, which took 1 hour to get to on the school bus. Neither of my parents were educated beyond early high school, but my father Vern Nash has a strong passion for learning and always helped and encouraged me in my education. After I graduated from high school I packed as much of my stuff that would fit into my car and moved to Wollongong for university, 5 hours away from my parents. At the University of Wollongong I first completed a Bachelor of Psychology with Honours. Shortly after this I realised that I didn’t want to use this qualification, so I went back to uni as a mature age student and retrained in a Bachelor of Computer Science, studying part time and working part time. During this degree I completed 2 internships at Google, first as a STEP intern (an internship for first and second year uni students from underrepresented groups), and then as a Software Engineering intern. At the end of my second internship I passed the interviews to convert to a graduate position as a Software Engineer. I started full time at Google November 2015, 3 days after my last exam and 2 days after my birthday.
Of course someone with a different background from me could do my job. Diversity of employees is a very important and valuable asset to a company. People from different backgrounds bring different ideas and experiences to the table. If all employees were the same we wouldn’t be very productive as a team! The sorts of skills that are useful for software engineering are a passion for logical problem solving and working well in a team. You need to know at least one programming language. Once you understand the foundations of writing code, this skill can easily be applied to other languages.
These are a few of my favourite things: getting stuck into some problem, making fast and steady progress, fixing compilation errors, starting to understand a complex system, passing tests, passing code review, landing code into the code base.