Software Development Engineer II
2013 to present in Vancouver, Canada
I work on the payments platform in the Vancouver office. My team works on front-end payments widgets that could be placed on Amazon web-pages and interact with back-end payments platform services.
- First member of my team in Vancouver, working remotely with team in Seattle.
- Helped the team grow to 11 engineers and a local manager. I interviewed 5 of these new hires and helped on-board them all.
- Wrote the first iteration of a widget that was later used on the Amazon Your Account page (www.amazon.com/wallet).
- Helped Amazon businesses, such as AWS and Kindle, accept payments using our service.
- Led a team of 6 engineers to implement payment selection in the amazon.com checkout using our widget framework.
Senior Software Developer
Oct 2009 to Dec 2012 in London, UK and Vancouver, Canada
OpenBet is a leading supplier of software to the online gambling industry. I worked on client teams for BCLC (British Columbia Lottery Corporation) in Vancouver and William Hill in London.
- The only developer involved in all development stages of the BCLC sports-book project www.playnow.com/sports from the initial workshops in February 2011 to the successful launch in July 2012.
- Promoted to Senior Developer in December 2011.
- Offered opportunity to go to Canada after only a year with OpenBet to work in a small development team on a, highly profitable, new customer account as part of the company's expansion into the North American market.
- Played a significant role in the initial deployment of live betting functionality to the William Hill sports-book sports.williamhill.com/bet. I was assigned to this project after only a couple of months of working at OpenBet. I proved myself to be an effective developer and became a de-facto authority on the functionality within a team of around twenty developers.
University of Edinburgh
2006 to 2009
During my time as a postgraduate researcher I investigated difficult conceptual problems in the areas of Artificial Intelligence, Informatics, Philosophy and Law. My thesis addressed the problem of providing automated support for the evolution of legal knowledge.
Teaching Support Provider
University of Edinburgh
2006 to 2009
Below is a list of the courses I taught, along with the roles and years:
- Inf1 Object-Oriented Programming, Demonstrator, 2006-07 and 2008-09
- Inf1 Computation and Logic, Tutor, 2008-09
- Inf1 Functional Programming, Tutor, 2008-09
- Inf1 Data and Analysis, Tutor, 2008-09
- Inf2d Reasoning and Agents, Teaching Assistant, 2007-08 and 2008-09
- Fundamentals of Artificial Intelligence (Masters course), Tutor, 2008-09
In particular, as the teaching assistant for the 2nd year course Reasoning and Agents I was responsible for:
- Creating programming assignments for students, using the Haskell programming language
- Marking student assignments
- Presenting lectures about assignments
- Responding to students' queries
- Working with the course lecturer to select the course's content
I also helped with events aimed at school students, such as the IT4U workshop.
- Linux system administration: Ubuntu, Arch Linux, Red Hat
- Shell scripting: Bash
- Functional Programming: Scala, Haskell
- Declarative Programming: SQL
- Scripting Languages: Python, Tcl, Ruby
- Web servers: Apache
- Database Management Systems: Informix, MySQL, PostgreSQL, SQLite
- Version control systems: CVS, SVN, Git
- Web development server-side: Tcl, PHP
2006 to 2009:
MPhil, Informatics, University of Edinburgh
Supervisors: Prof. Alan Bundy, Dr. Fiona McNeill, and Mr. Burkhard Schafer
Thesis: Computational Models of Ontology Evolution in Legal Reasoning
2001 to 2005:
MSci (Hons), Mathematics (1st), University of Bristol
I received amongst the highest marks in my year group in several modules, in particular the 2nd year Applied Probability module, the 3rd year Logic module and the 4th year Computational Complexity module.