What I’m doing next: APM at Google


Fortune magazine recently named Google as the best place to work in 2013 and I’m feeling very lucky that I’m going to be a new employee there this fall. This will be my first ever real job, not an internship, not temporary work, but a full-time career.

Last summer I interned as a Site Reliability Engineer (SRE) at Google’s Dublin office and HR gave me three options to apply for to “convert” to a full-time role once my studies were complete: SRE, SWE (Software Engineer) and APM (Associate Product Manager).

My initial reaction was to apply as a SWE, as I had applied for that role an SWE internship but had been assigned to SRE for a specific project. Applying for either of these engineering roles would involve going through a set of interviews (usually 3 I believe). SRE requires a mix of sysadmin and engineering skills, and I wasn’t confident in my ability to pass sysadmin-type interviews because I don’t have a lot of background in that type of work.

I have had a few Software Engineer interviews in my time (IBM, McLaren, Google, etc) so I shouldn’t have been apprehensive about those kind of technical interviews. But it wasn’t my choice.

I decided to apply for APM, or Associate Product Manager, a role I had barely even heard about before I had started my internship.

Continue reading

Hawaii – Presenting at IEEE Cloud 2012


On my flight over I was stuck by the number of circle shaped fields in the mid-continental United States. Turns out there is a very good reason for these as explained here: http://llk.media.mit.edu/projects/circles/flying.html

I also got my first ever view of Silicon Valley, can you spot the Stanford Bell Tower?


Today I gave a presentation at IEEE Cloud 2012 – one of the premier conferences on Cloud Computing for a paper by Ali Khajeh-Hoessini and myself.


The paper is entitled “CloudMonitor: Profiling Power Usage” and discusses the CloudMonitor software and how it could be used to create an energy tariff for Cloud providers. Various items to do with the presentation:

Paper Presentation Poster

I’m really enjoying my time so far in Hawaii.


Noogler Orientation: My first 3 days

So I’ve survived Noogler orientation… Whew!noogler android

Day 1: 8.30am – 10.00pm (finished work at 8pm – then went out for drinks with my team)

Day 2: 8.30am – 10.30pm (finished work at 7.30pm – then went out for dinner with my Noogler class)

Day 3: 8.30am – 7pm (my first “normal” day)

I’ve had an amazing 3 days, the people, the food, the environment are all incredible. I’m working for the Traffic SRE team – responsible for maintaining Google’s uptime on services which I’m not sure if I’m allowed to talk about so won’t for safety’s sake. I can say this: the numbers that were mentioned (and shown) to me on Tuesday made my head melt. Dizzying stuff. The thought of writing code to deploy on Google’s infrastructure is truly intimidating. I can’t wait to get started.

For more information on what SRE’s do at Google, check out this great blog post.

Continue reading

Setting up bash colors

Another “forget-me-not” blog post:

To setup color integration on a bash environment:

Download this file and rename it to .bash_colors.sh then place it in your home directory.

Then add the following code to your .bash_profile:

source ~/.bash_colors.sh
export LSCOLORS="fxfxcxdxbxegedabagacad"
alias ls="ls -GxF"
export PS1="\[$txtcyn\]\w\[$txtylw\]\$(git branch 2> /dev/null | grep -e '\* ' | sed 's/^..\(.*\)/{\1}/')\[$txtpur\][\T]\[$txtrst\]$ "

The finished result should look something like this:

March – May PhD status update

Since March I have been working on two main experiments for my PhD:

1)   Extending the work on profiling systems to Virtual Machines – examining the affects of the Virtualization layer and testing if hypothesis about mixes still apply.

2)   A Workload Mix experiment using Phoronix benchmarking suite

Continue reading

Launching multiple Virtual Machines on Ubuntu using vmbuilder & virsh

This post is more of a reference for my future self – a reminder of the step by step process to get multiple virtual machines running on a physical Ubuntu server.

I used the following two guides as references for starting up VMs:

1) JeOS and vmbuilder (Official Ubuntu Documentation):

2) Blog on vmbuilder:

They are far more comprehensive than what I will provide here. This is the lite version of what you will need to setup multiple VMs.

Continue reading