MariaDB Database Administrator (DBA)
2018 - 2020Shutterstock- Migrated and updated a part of a large database estate (dozens of replica sets, hundreds of servers, hundreds of TBs of data) from bare-metal servers in multiple data centers to AWS and self-hosted KVM.
- Used ZFS snapshot sending, XtraBackup, and mysqldump for large-scale data migration, depending on what was available and most appropriate for each server.
- Installed a continuous incremental backup regime with hourly restore granularity using ZFS snapshot sending via sanoid/syncoid.
- Implemented Percona monitoring and management (PMM).
Technologies: SQL Triggers, SQL, Amazon Web Services (AWS), KVM, CentOS, ZFS, MariaDB, MySQL DBA, MySQL, Performance Optimization, Performance Tuning, Query Optimization, Optimization, AWS RDSSenior Database Architect
2014 - 2019Pure360- Redesigned a large MySQL database estate running on RedHat/CentOS Linux.
- Alleviated concurrency contention bottlenecks in InnoDB, rewrote queries to improve efficiency, and improved indexes.
- Tuned storage alignment, MySQL, and OS-level configuration and used ZFS to further improve performance and operational features.
- Delivered performance improvement of 12x (1,200%).
- Extensively tested the performance impact of moving to different cloud providers including AWS (Xen) and ESXi-based ones.
Technologies: SQL, VMware ESXi, Perl, Linux, ZFS, Amazon Web Services (AWS), MySQL, Performance Optimization, Query Optimization, Performance Tuning, MariaDB, Optimization, AWS RDSMySQL Database Administrator (DBA)
2016 - 2018UKCloud- Troubleshot and optimized the database estate consisting of Galera/MariaDB and MySQL server clusters on a large VMware ESXi server estate.
- Improved the run times of a number of regularly recurring tasks from hours down to minutes.
- Deployed new high-availability PostgreSQL and MariaDB clusters.
- Used DevOps methods to improve consistency and reliability.
- Migrated legacy MariaDB/Ubuntu systems to PostgreSQL/CentOS-based replacements.
Technologies: SQL, CentOS, PostgreSQL, Galera Cluster, MariaDB, MySQL, MySQL DBA, Performance Optimization, Performance Tuning, Query Optimization, OptimizationDatabase Specialist
2017 - 2017Investis- Delivered performance optimizations in the client's stored procedures on their MySQL RDS databases.
- Developed existing operations on their PostgreSQL RDS databases.
- Built overall database performance improvements in the 10x to 50x range compared to original implementations.
Technologies: SQL Triggers, SQL Stored Procedures, SQL, Amazon Web Services (AWS), PostgreSQL, MySQL, Performance Optimization, Performance Tuning, Query Optimization, Optimization, AWS RDSMySQL Database Administrator (DBA)
2016 - 2016Rise Projects- Resolved database throughput bottlenecks (AWS, RDS, MySQL).
- Achieved a 100x (10,000%) increase in database throughput in the first three days with minimal application changes.
- Reimplemented the gathering of application dashboard statistics to be asynchronous, which alleviated a number of deadlocking hotspots.
Technologies: SQL Triggers, SQL Stored Procedures, SQL, Amazon Web Services (AWS), MySQL, MySQL DBA, Performance Optimization, Performance Tuning, Query Optimization, Optimization, AWS RDSData Architect
2015 - 2016DVSA- Steered, as the database architecture specialist, the database design and implementation delivered by three separate suppliers across four separate projects.
- Established processes to ensure that the back-end database solutions are maintainable, robust, and capable of performing in line with challenging availability and performance requirements over the long-term lifecycle of the system.
- Oversaw the migration of databases from the previous cloud service provider to AWS (RDS).
- Designed an exhaustive audit superstructure using shadow tables and triggers to be attached to the existing database design with minimal changes to both the database and the application stack above it.
Technologies: SQL Triggers, SQL Stored Procedures, SQL, Perl, Amazon Web Services (AWS), MySQL, MySQL DBA, Performance Tuning, AWS RDSSystems Architect | Administrator
2013 - 2014Moorfields Eye Hospital- Architected a high availability managed service platform for the OpenEyes project, based on RedHat Enterprise Linux 6/RedSleeve, Linux 6, and VServer.
Technologies: SQL, RHEL, MySQL DBAMySQL Database Engineer
2012 - 2013Adfonic- Optimized and improved the database infrastructure containing approximately 100 TB of data, based on RedHat Enterprise Linux 6 and MySQL (variants including Percona, MySQL, MariaDB, and MySQL Cluster).
- Worked with compressed archive databases residing on a GlusterFS storage pool. Automated tasks using Perl and Bash scripts.
- Implemented a selective, versioned backup system for MySQL database structures.
- Developed an in-database job scheduler using stored procedures and scheduled events to facilitate parallelization of stored procedures to better leverage multi-core hardware.
- Designed and implemented a new database ingress solution to boost the data throughput capacity from the old bottleneck of 170,000 transactions/second to several times that figure.
Technologies: SQL Triggers, SQL Stored Procedures, SQL, Percona, MariaDB, MySQL Clustering, MySQL DBA, Performance Optimization, Performance Tuning, Query Optimization, OptimizationISP Developer
2012 - 2012BSkyB- Worked on improving and optimising performance of the firmware update system for broadband devices.
Technologies: SQL, PerlMySQL Developer and Database Administrator (DBA)
2012 - 2012Cube 19- Developed stored procedures and optimized the MySQL database performance of the client's business intelligence data warehouse system.
- Tuned MySQL server and Linux OS; optimized indexes, rewrote queries and implemented materialized views maintained by triggers.
- Delivered performance improvements of around 24x (2,400%).
Technologies: SQL Triggers, SQL Stored Procedures, SQL, Linux, MySQL, MySQL DBA, Performance Optimization, Performance Tuning, Query Optimization, OptimizationUnix Platform Architect
2008 - 2012Atos- Designed and implemented new systems for the BBC. Projects involved load balancing technologies (Inlab's Balance and BalanceNG and Linux kernel level load balancing using LNLB). The platforms used were Solaris and RedHat Linux.
- Updated LNLB code to be compatible with later kernels.
- Resolved a major BBC iPlayer outage and rectified the complex MySQL database problem that caused it.
Technologies: SQL, Perl, Solaris, RHEL, MySQL, MySQL DBASenior Database Administrator (DBA)
2011 - 2011Lumesse- Resolved stability issues, improved the performance, and redesigned the server estate to ensure long term supportability of a client's replicated MySQL databases.
- Resolved a long-term recurring table corruption issue.
- Improved the performance of the database stack by over 20x (2,000%) on the same hardware and same VMware ESX platform. This enabled the massive reduction in size (and cost) of the MySQL server estate while still providing better performance.
- Upgraded MySQL servers from 5.0 running on Debian Linux to 5.1 running on RedHat Enterprise Linux 6 with negligible downtime.
Technologies: SQL, VMware ESXi, VMware, RHEL, MySQL, MySQL DBA, Performance Optimization, Performance Tuning, Query Optimization, OptimizationMySQL Database Architect
2010 - 2010Transactis- Optimized MySQL databases to meet the performance requirements in time for the launch of the software product.
- Tuned the entire application stack including VMware configuration, Solaris and RedHat Linux, NAS MySQL, table structures, queries, and stored procedures.
- Achieved performance improvements of several orders of magnitude.
Technologies: SQL, VMware ESXi, Solaris, RHEL, MySQL, MySQL DBA, Performance Optimization, Performance Tuning, Query Optimization, OptimizationSenior Database Administrator (DBA)
2010 - 2010Via Vox- Tuned MySQL databases running on Debian Linux systems.
- Handled the migrations to new hardware.
- Implemented a redundant fail-over database solution based on block device mirroring (DRBD) and RedHat clustering, with secondary backups using MySQL replication.
Technologies: SQL, DRBD, RHEL, MySQL, MySQL DBAMessaging Engineer
2009 - 2009Deutsche Bank- Worked in a team of system administrators responsible for the day-to-day running and maintenance of various messaging platforms.
- Looked after systems running Sendmail, Mailman, Brightmail, and PureMessage spam filtering, PostgreSQL and bespoke messaging solutions on Linux and Solaris (9, 10, zones) with LDAP authentication.
Technologies: SQL, Solaris, Linux, PostgreSQLSystems Engineer
2008 - 2009BT Global Services- Worked as a part of the team performing day-to-day administration and maintenance of a large Linux and Solaris based service delivery platform running bespoke software.
Technologies: Solaris, LinuxSystems Administrator
2007 - 2008Griffin Information Systems- Built a new email storage system based on RHEL and SAN-based clustered GFS storage with MySQL for metadata storage.
Technologies: SQL, RHEL, MySQLSoftware Engineer
2007 - 2007Solartron Metrology- Wrote calibration software for measurement probes in C++.
- Produced a calibration certificate generation system using Perl, with data stored in MySQL.
Technologies: SQL, C++, Perl, CentOS, MySQL, MySQL DBASystems Engineer
2006 - 2007UK2- Resolved a number of performance issues impacting the email system using MySQL clustering for authentication and metadata storage.
- Introduced the use of virtualization for product testing.
- Assisted with a large-scale data centre migration.
Technologies: SQL, Xen, Perl, RHEL, MySQL Clustering, MySQL DBA, Performance Optimization, Performance Tuning, Query OptimizationSoftware Developer
2006 - 2006Mobile Streams- Maintained a MySQL database containing metadata for all of the available downloads.
- Developed additional interfaces for providing downloads to customers in Perl.
- Introduced PersistentPerl to improve performance of the HTTP front-end.
Technologies: SQL, Perl, RHEL, MySQL, MySQL DBASoftware Developer
2006 - 2006Lorien Customer Focus- Wrote software for supply chain management for a major car manufacturer.
- Wrote the software in Perl while preserving the data in a PostgreSQL database.
- Optimization of queries to meet performance goals.
Technologies: SQL, Perl, RHEL, PostgreSQL, Query Optimization, OptimizationSystems Architect
2004 - 2006Hanover Park Services- Maintained and audited software for the customer's insurance selling platform.
- Redesigned the system architecture to streamline the server estate and improved availability by introducing hot failover capability between servers.
Technologies: SQL, Xen, Perl, RHEL, PostgreSQL, MySQL, MySQL DBASoftware Developer
2002 - 2004Billco Group- Developed and maintained software for client's internal use.
- Architected the platform for a new group-wide data and document sharing project, backed by FreeBSD servers running a Coda distributed file system and MySQL backed metadata storage.
Technologies: SQL, Perl, FreeBSD, RHEL, PostgreSQL, MySQLSoftware Developer
2002 - 2002InterClubNet- Worked on the development of a sports management system for the clients' foreign customers.
Technologies: SQL, Perl, RHEL, PostgreSQL, MySQLSoftware Developer
2001 - 2001The Real Adventure- Improved the reliability of the legacy systems.
- Resolved and mitigated complex issues surrounding the legacy code's inability to cleanly handle transaction interruptions.
Technologies: SQL, Perl, RHEL, PostgreSQL, MySQL, MySQL DBASoftware Developer
2000 - 2001Selected Financial Investments- Developed software for heavily customizable news data aggregation.
- Built software for stock market data aggregation.
Technologies: SQL, Perl, RHEL, PostgreSQL, MySQL, MySQL DBA