- Over 5 years of commercial Java development, 4 in unified communications applications.
- 2 years of experience in working with customers in the financial industry, developing and delivering unified communications solutions.
- Over 4 years experience in web application development across a variety of domains.
- Coaching and mentoring experience within the BT software engineering community.
New Media Education Ltd (October 2013 – July 2014)
Front-end Developer - Meducation
Responsible for developing the user interface for Meducation, a professional network for the medical community, emphasising education. This involved a mixture of Rails, AngularJS, HTML and CSS development.
BT (2006 – 2013)
Senior Software Developer (2012 - 2013) - BT Osmosoft
- Contributed to the development of TiddlySpace, a platform for flexible micro web content. This included bug fixes, new features, supporting libraries and applications.
- Developed updates to the BT Global Services desktop website, interpreting Photoshop designs and implementing them to support all major modern browsers and legacy IE browsers (back to version 7).
Senior Software Developer (2010 – 2012) – software development tools
- Setup the functional test process for the BER project which included writing Selenium tests. Coached 2 junior testers within this area.
- Pair programmed to develop additional features, bug fixes and performance improvements to a dashboard web application (Grails). The dashboard provided an overview of continuous integration and testing practices used amongst global platforms across the company. Coached an apprentice programmer within this area.
- Contributed knowledge to the company development community by presenting talks at internal developer conferences and running “brown bag” sessions on topics such as Android and test-driven development.
Senior Software Developer (2008 – 2010) – unified communications
- Developed a Java SDK as a wrapper library to simplify an EMCA-323 XML API exposed from our call control platform. This included consulting with other developers to show them how best to consume telephony capabilities without worrying about the underlying complexities of Computer Telephony Integration (CTI).
- Lead developer on an integration project between the BT call control platform and Ribbit (virtual PBX acquired by BT). The aim was to provide click-to-dial capability from various applications using the PSTN and mobile networks. This work included designing the overall integration solution and developing using a combination of Java and Tomcat and REST APIs. I also collaborated with the Ribbit team in the USA to produce a support model around the service and beta test their platform using the trial users.
- Coached various graduate colleagues on various development projects. This involved regular face-to-face meetings with discussion and advice around the work we were doing together, as well as giving direction when needed in order to complete tasks.
Graduate Software Developer (2006 – 2008) – unified communications
- Integrated the IBM Lotus Sametime instant messaging client into a call control middleware platform. This was using the IBM Java plug-in architecture (eclipse-based). This was first demonstrated to customers in BT tower in November 2006 and then at several IBM business partner events.
- Provided consultative services on behalf of BT Global Services during bid work to sell our call control platform to major financial companies including HSBC, Credit Suisse, Bloomberg and Nomura. This involved direct customer engagement on site.
- Co-developed a Jabber click-to-call integration solution for Credit Suisse using Java and XMPP, working closely with the customer technical colleagues and Jabber.org employees.
Undergraduate Software Developer – core and access networks.
- Modeled social and economic data from selected London boroughs using MapInfo and C# to enable engineers to accurately place trial equipment that would serve next generation broadband services to key demographic areas in London.
- Developed a web front end for a network routing tool in ASP.NET. Customers are now able to plan network routes (e.g. from mobile mast site to exchange) from a simple web page rather than having to install bespoke software on their computer.
- Developed an application in VB.NET that more accurately models BT's copper network by using road data provided by MapInfo. This solution enabled more accurate mapping of the BT copper access network by aligning it to the UK roads network.
- Pair programmed to develop a risk register web site for a BT fibre to the premises (FTTP) trial in ASP.NET linked to a MSSQL database via ADO.NET.
- Java: J2SE, J2EE
- HTML & CSS
- Selenium web page testing
- Frameworks: Rails 3, Grails 1.3, AngularJS
- Operating Systems: Linux (both Redhat and Debian derivatives), Mac OS X.
- Databases: PostgreSQL, Oracle, MySQL
- Test-driven development: JUnit, EasyMock, Spock, Jasmine
- Continuous integration tools: Ant, Maven, Gradle, SVN, Git, Bamboo, Jenkins, Travis CI, Grunt
- Computer Telephony Integration (CSTA, TR87, SIP)
- Android application development.
See the Portfolio section of this website.
2:1 BSc (Honours) in Computer Science, The University of Nottingham.
Dissertation: Virtual dashboard for the Mixed Reality Laboratories research group.
Referee details are available upon request.