Personal Details
Offline contact details
- Address
- 8 Cresta Drive, Scunthorpe, North Lincolnshire, DN17 2SD
- Telephone
- +44 (0)1724 487161
- Mobile
- 07762 601149
Online presences
- cv@john-smith.me
- Personal website
- http://www.john-smith.me
- JohnMMIX
- https://uk.linkedin.com/pub/john-smith/14/377/6a7
- GitHub
- https://github.com/JohnSmithDev
- Stack Overflow Careers
- https://careers.stackoverflow.com/JohnSmith
Other details
- Nationality
- British
- Academic Qualifications
- BSc (Hons) 2.2 in Computer Science at the University of Nottingham; 3 GCE A-Levels (Maths, Computer Science, German); 7 GCE O-Levels.
Skills, Abilities and Areas of Expertise
Platforms
Operating systems
- Unix and Linux - many variants, most recently Fedora, CentOS and SuSE
- MacOS X
- iOS
- Windows (primarily as an end-user; I have slight experience as an admin, but none as a developer)
Cloud platforms
- Google App Engine
- Amazon Web Services: EC2, S3, RDS
Programming languages
Core expertise
- Python (2 and 3)
- SQL (numerous variants)
- JavaScript ("traditional" through to ES6 aka ES2015)
- Unix shell scripting (mainly bash)
Have also used, but not recently and/or heavily
- C/C++
- Perl
- Java (J2EE, JSP, applet)
- PostScript
- Tcl/Tk
- C#
- Objective-C/Cocoa Touch
Web technologies
Front-end
- JavaScript
- jQuery
- Backbone
- Ext.js
- HighCharts
- HTML(5)
- CSS(3)
- WebGL
- Server Sent Events
- SVG
- Google APIs
Back-end
- Django
- Django REST Framework
- webapp2
- Flask
- node.js
- ExpressJS
- Handlebars
- Apache
- NGINX
- Google App Engine
- Varnish
- Selenium
- Tomcat
- JBoss
- OAuth
Server applications
Databases and ORMs
- PostgreSQL
- MySQL
- Firebird
- Oracle (8i through 10g, also HTML DB aka Application Express)
- MS SQL Server (inc. Analysis Services)
- Ingres
- SQLAlchemy
- Psycopg2
Server management
- Samba
- Puppet
- Veritas Cluster Server
Software development tools
Team and workflow tools
- MediaWiki
- HipChat
- Bugzilla
- CodeBase
- Jenkins
- ReviewBoard
- JIRA
- git
- Subversion
- RCS
Developer tools
- Emacs
- Sublime Text 3
- Eclipse
- TOAD
- ProClarity
- Visual Studio
- Xcode
- gdb
- Purify
Miscellaneous technologies
Productivity and design tools
- MS Office
- Google Docs
- InDesign
- QuarkXPress
Protocols and formats
- XML (including SOAP)
- JSON
- Distributed and clustered systems (client/server, load-sharing, HA, etc)
- Image manipulation
- Multi-threaded applications
Technology-related "soft" skills and interests
- Consideration for User experience, accessibility, internationalization, etc.
- Test driven development.
- Pragmatic agile development practices.
- Disaster recovery/business continuity strategies.
- Managing of financial systems for external audit requirements (e.g. SOX 404).
- Producing documentation and giving training (both intra- and inter-departmental).
- Management and development of the full system lifecycle, from analysis and design through to go-live, BAU and ongoing support and development.
Work History
-
2013 -2015 : BATS Trading Ltd (now trading as CBOE Europe)Web developer at BATS Chi-X Europe, the biggest equities exchange in Europe. I worked on both the public site and internal web-based tools, and for the majority of my tenure, was the sole web developer in Europe, working alongside the other Europe developers, and in conjunction with the web team based at the US head office.
My core responsibilities included designing and developing new applications, maintaining and enhancing existing applications, and providing support to internal and external users. I was also involved providing support and doing irregular development work on the batch processing and core trading systems
Web applications were built in Python/Django and JavaScript/Ext.js, running on Apache/SuSE Linux, with Postgres and Varnish also part of the stack.
-
2008 -2012 : Freelance contracting to the following clients-
2011, 2012: Potato Ltd
Full-stack web developer, working mostly on projects for Google's marketing teams. My responsibilities included:
- Lead developer on Our Mobile Planet, built using Python, App Engine, JavaScript/jQuery and CSS3. Role also involved project management and direct liaison with customer's staff and other vendors/suppliers across three continents.
- Member of the development teams - sometimes as lead, sometimes as a minor contributor - on several other intranet/backend projects, for clients such as Google and M&S, using technologies such as Django and Backbone.
-
2011: European Directories
Short-term, non-development position, evaluating and advising on vendor proposals.
-
2009 - 2010: Potato Ltd / Google Inc
Developer working on-site in Google's London office, contracting via Potato agency. Initially part of a three man team developing Getting British Business Online. I was later team lead on Consumer Commerce Barometer, and also worked on systems for internal Google use. Technologies used included Python, App Engine, Django, JavaScript/jQuery and Amazon EC2.
-
2008 -2009 : Newsprinters LtdI was brought in to ease the transition between the commissioning and full operation at three new print sites, taking responsibility for all the IT aspects of the newsprint reel handling systems.
This required a wide variety of "soft" IT skills, from project managing vendors and suppliers, to defining, documenting and training internal processes. I also designed and built reporting and monitoring systems to cover shortcomings in products from external vendors. Technologies used included Windows, Linux, Perl, Python, Firebird database and PostScript.
-
-
2004 -2008 : News International NewspapersOperating as a senior analyst/programmer in a different team from my previous stint, notable projects included:
- Designing and developing a web-based system for tracking customer responses to marketing activities across the business. Underlying technologies were Solaris, JSP, Tomcat, Oracle and HTML DB.
- Business Continuity system to produce editorial content from an external Disaster Recovery site.
- Developing a system to track newsprint deliveries of value £100m per annum, with rigorous audit requirements. Technologies included Java, Oracle, XML, SOAP and Solaris.
- I also consulted on a £650m project for new print sites, in areas such as vendor analysis and go-live.
-
2003 -
2004 : Merchant PaganConsulting for a small I.T. services company, with a focus on open-source solutions.
-
2001 - 2003: Career break
Funded by a Y2K bonus payment, I took the opportunity to travel the world.
-
1996 -2001 News International NewspapersInitially employed as a programmer, I was promoted several times, rising to the title of consultant. I was part of the team responsible for developing and maintaining many of the systems for newspaper production. Numerous technologies were utilized, e.g. Solaris, C, PostScript, Tcl/Tk, Unix scripting, MacOS and Oracle.
-
1995 -1996 : PA Data DesignDeveloped systems for newspaper and teletext services; technologies were Unix, C, Perl, MacOS and Informix.
-
1993 - 1995: Esprit Automation
Developed, trained, documented and supported DOS-based applications in C.