Full-stack Programmer with over 12 years experience in the web industry working with FLOSS.
Key Areas of Experience
Project Development Management :
-
Managed the full life cycle of large scale developments with a small team of developers.
-
Managed employees' time and co-ordinated development.
-
Sourced and interviewed candidates.
-
Focused upon developers' strengths and worked with developers to regularly assess areas of improvement.
-
Provided team members with guidance and personal support when and where needed.
-
Dealt with project budget for personnel, hardware and co-location costs, etc.
-
Ability to communicate clearly and with consideration of technical understanding to different team members, management and clients.
MySQL / MariaDB 5:
-
Over 10 years experience using MySQL to architect databases from a handful of relations to hundreds of relations containing millions of records.
-
Creation and optimization of complex queries using well planned indexes and various optimisation techniques i.e. vertical/horizontal partitioning, carefully selected
RDBMS and table engine type, RDBMS specific tweaking and carefully selected hardware.
-
Experienced in using Maatkit.
-
Setup and maintained many replication configurations: master->slave, master->master and ndbcluster used in high load production environments.
-
Developed custom storage engine to manage the storage of hundreds of millions of pieces of attendance data using a CPUs strengths in boolean logic.
-
Submitted bugs to MySQL development team i.e. #23800.
-
Made clear decisions for application development to abstract database functionality to ease future requirements.
-
Personal blog listed on Planet MySQL.
PHP 4 & 5 Development :
-
Over 10 years PHP experience developing ad-hoc scripts, site modifications to large scale web applications used by thousands of users.
-
Designed and developed a fully object-oriented centralized school behaviour management/statistical analysis web application for schools in
the UK, with continued active development until the present day.
-
Produced many ad-hoc scripts for reporting and data manipulation, connecting to a wide variety of DBMS.
-
In depth understanding of object-oriented programming patterns and agile development.
-
Founder of phpd (The Pre-Forked Persistent PHP 5 Web/Application Server).
Web Development:
-
Expert understanding of HTML, CSS and Javascript using the jQuery and ExtJS libraries.
-
Solid understanding of search engine optimisation and web site traffic analysis.
-
Knowledge of web accessibility guidelines from W3C and WAI.
-
Understanding of XML, XQuery, XPath, XSLT and DTD/XML Schema specifications.
Information Systems Management :
-
Expert ability at planning, development, deployment and support of large scale normalized relational databases with an experienced ability to foresee future growth and
needs.
-
Experienced in a wide range of RDBMS systems: MySQL, PostgreSQL, SQLite, MSSQL and DB2.
-
Provided consultancy services to schools in the UK regarding the processing of MIS data and data migration, including CMIS, SIMS and Integris G2.
-
Built a large-scale centralised behaviour management system heavily centred around a complex relational database used by staff, students,
parents, education welfare officers and local authorities to schools in Manchester and across the country.
-
Maintained school's MIS systems and produced custom tools for data analysis & reporting.
Server Management / Administration :
-
Planning, setup, deployment and management of many high availability clusters from the hardware and software to the data centre.
-
Dealt with a diverse range of networks ranging from school intranets to city wide WANs to dedicated internet connections.
-
Setup and maintenance of a wide range of operating systems and services i.e. GNU/Linux, Windows Products, LVS, MySQL Replication (inc master->master replication)/ NDB
Clustering, memcached, DRDB, PostgreSQL, Apache, PHP, Heartbeat, EXIM, PDNS / BIND, NFS.
-
Experience with various version control systems: CVS, Subversion and git.
-
Ability to write shell and perl scripts using cron, and the vast array of command line utilities in a GNU OS to satisfy requirements quickly and effectively.
-
Experienced in troubleshooting a wide range of problems with respect to software applications, hardware and network infrastructure.
C Development :
-
Written extensions for PHP, most notably the HTTPS extension for phpd which includes using the openssl and sockets libraries under GNU/Linux.
-
Developed ad-hoc tools for data manipulation and reporting using MySQL and SQLite.
-
Undergoing development of an experimental database management system using a mixture of object, navigational and relational database concepts and theories.
-
Ability to make modifications and additions to FLOSS software.
Custom GNU/Linux Distributions :
-
Throughout my career I have implemented custom GNU/Linux distributions for various tasks i.e. desktop, embedded server and optimised server use. In recent
years I have used the Arch Linux distribution as the basis for my custom distributions due to it's elegant build system and smart package manager.
Other
Employment History
2008 - PresentTechnical Director, Schools Data Services Ltd »
-
Started company to manage the school behaviour management system; IRIS.
-
Overall responsibility for the technical direction of the company.
2001 - 2008Development Manager, Manchester City Council, Didsbury »
-
Designed and developed a behaviour management system for schools across Manchester which is rapidly expanding out to schools across the country.
Ref: http://www.iris.ac
-
Sourced, trained and managed a small team of developers co-ordinating with outside network managers, IS managers and clients.
-
Implemented centralized support services to lessen work load on the relatively small team.
-
Ultimately responsible for overall decision making on the direction of development.
-
Liaised with managers and clients to extend and modify the system on a highly iterative basis.
-
Designed and managed the database which stores millions of rows of data with a focus on normalization and optimization.
-
Planned, deployed and maintained the suites of servers running GNU/Linux, LVS, MySQL and Apache which are used to deliver IRIS to thousands
of users with multiple fail overs based across multiple geographical locations.
2000 - 2001Developer, Ultima Group, Manchester »
-
Hired to research existing PHP applications for a housing estate community portal and the feasibility of integrating the existing applications into a single system.
Applications included but were not limited to: Bulletin board, Content Management, Live chat, Blog and Calendar systems.
-
Responsible for the Research and implementation of a custom GNU/Linux Distribution for secure server operations for the community portal.
Andrew Rose, Curriculum Vitae 2007-12