CurriculumVitae

nicolaw 24th May 2024 at 2:55pm
nicolaw
NameMs Nicola Elizabeth Worthington
Telephone+44.7738930000, +44.3333406333
Emailnicolaw@tfb.net (prefered means of initial contact please)
CVhttps://nicolaw.uk/cv (long), https://nicolaw.uk/NicolaWorthington (2 page) https://www.linkedin.com/in/perlgirl
FOSShttps://gitlab.com/nicolaw/, https://hub.docker.com/r/nicolaw/, https://launchpad.net/~nicolaw/, http://search.cpan.org/~nicolaw/, http://backpan.perl.org/authors/id/N/NI/NICOLAW/
NationalityBritish citizen
LocationLode (CB25), Cambridge, Cambridgeshire, UK

Qualifications & Courses

Skills & Technologies

  • Shell scripting (optimised BASH), Go (golang), Makefiles, Perl, some Python
  • Immutable infrastructure & cloud compute; internal Google technologies, OpenStack, GCE, AWS, Packer, Ansible, Docker, some Kubernetes, some Puppet
  • Numerous Amazon Web Services; EC2, EKS, VPC, Elastic Beanstalk, EMR, ACM, ECS, EFS, CloudMap, CloudWatch, SSM, Route 53, IAM etc.
  • Proficient in Debian DEB, and RedHat RPM build and packaging
  • Source revision control systems; client use and management of as a service to end-users; RCS, CVS, Subversion / SVN, git, GitLab, GitHub, Perforce
  • CI/CD using GitLab & Jenkins (scripted and declarative Pipelines & some Groovy)
  • Various UNIX derived platforms; Linux (primarily Debian, Ubuntu, CentOS & RHEL, Amazon Linux) (RHCE qualified), FreeBSD 9, FreeNAS, Darwin
  • Past professional familiarity of IBM AIX, SunOS, OpenSolaris, HP-UX, DG-UX, SCO
  • Multiple internal Google technologies, including numerous domain specific languages
  • Can get by reading various languages like C, Javascript, Java for infrastructure support and diagnosis
  • R83 DataBasic, PICK RDBMS and SystemBuilder SB+ 4GL, OptioDCS DCL and various other obscure domain specific languages
  • VMware Virtual Infrastructure / VI3 / ESX3 / ESXi4 / ESXi5 (VCP qualified)
  • Past professional familiarity with Cisco IOS and CatOS
  • PXE netboot automation, SYSLINUX, Red Hat's Kickstart & Debian's pre-seed
  • ZFS, Linux software RAID & LVM
  • Database servers and APIs; Perl DBI, ODBC, PostgreSQL, MySQL, MySQL Cluster (NDB), SQLite, UniData & UniVerse RDBMS, Revelation PICK, R83 PICK, AWS RDS, Aurora, passing familiarity with HBase & Presto
  • Networking tools, services and concepts; ipchains, iptables, ipset, Linux Virtual Server / LVS HA Load Balancing
  • Enterprise server hardware experience, including NetApp, Cisco, Brocade, hardware RAID, out-of-band management (DRAC, iLOM, iLO, IPMI & BMC)

Employment History

Jul 2020: General System Group Limited (formerly Excession Technologies Limited) - Principal DevSecOps Engineer

Location: Remote/teleworking.

Core Roles/Skills: Amazon Web Services (AWS), some Google Cloud Platform (GCP), Terraform, CloudFormation, Packer, GitLab CI/CD, Artifactory, Docker, Kubernetes, Helm, ISO 27001, CyberEssentials Plus, infrastructure deployment & consolidation, ownership of services supporting engineering, development of infrastructre-as-code for the General System and Excession platform.

Member of the senior leadership team. Lead a team of 5 engineers responsible for development of infrastructure-as-code used to deploy the General System and Excession platforms, as well as the CI/CD and cloud infrastructure used by the software development and QA teams. Provide technical design advice and consultancy to other parts of engineering, sales and management.

Designed and managed the rollout of a product release process, including the packaging and distribution of the product using Docker images.

Designed and implemented large Helm umbrella chart with documentation for customers to install the Excession platform.

Apr 2018: GeoSpock Ltd - Lead DevOps Engineer

Location: Chesterton, Cambridge, UK.

Core Roles/Skills: Amazon Web Services (AWS), some Google Cloud Platform (GCP), Terraform, CloudFormation, Jenkins CI/CD, Artifactory, Docker, some Kubernetes, big analytics, distributed computing, infrastructure deployment & consolidation, ownership of services supporting engineering, development of infrastructre-as-code for the GeoSpock database and platform.

Lead a team of 4 engineers responsible for development of infrastructure-as-code used to deploy the GeoSpock product, as well as the CI/CD and cloud infrastructure used by the software development and QA teams. Provide technical design advice and consultancy to other parts of engineering, sales and management.

Designed and managed the rollout of a product release process, including the packaging and distribution of the product using Docker images. Implemended CI/CD system deployment as infrastructue-as-code to allow testable, safer and repeatable redeployment.

I am currently researching a proof-of-concept to move the GeoSpock product into Kubernetes to provide a cloud-agnostic solution while minimising software development investment.

Feb 2015: Velocix Ltd/Nokia Video BU - Senior DevOps Engineer / Principal Engineer

Location: Milton, Cambridge, UK.

Core Roles/Skills: Linux system administration of ~400 hosts, OpenStack, monitoring (Zabbix/Nagios/Cacti/Munin/SNMP), automation, CI/CD, infrastructure deployment & consolidation, ownership of services supporting video business unit engineering, principal engineer support of product development engineering teams.

Senior engineer within a team of 6 responsible for proividing a shared hardware and software infrastructure for engineering teams to develop the CDN product, including platform idevelopment on the CDN product. Greatly reduced the number of manual tasks and processes, and the frequency of reactionary interrupts that reduced overall effectiveness of the team. This involved rationalising use of Ansible and full CI/CD automation of other common user management processes and DNS updates to our numerous BIND servers.

Other projects have included network and process security audits, replacing migrating from Nagios to an HA pair of Zabbix servers, migration of our Perforce source control repository to new hardware, implementation of comprehensive backups using Bacula, and assisting in migration from Perforce and BuildBot CI/CD to Git and Jenkins.

Implemented an in-place live upgrade path (with rollback) of our CDN product custom Linux distrubution to CentOS Linux through delivery of custom built ISO images and execution via kexec, allowing completely automated upgrades of servers on non-routed private networks where no physical or remote console access was availble.

Oct 2010: Google UK Ltd, Site Reliability Engineer (Ads Frontend)

Location: Victoria, London, UK. Occasional travel to international offices.

Core Roles/Skills: Large scale distributed systems administration, capacity and service continuity planning and implementations, out of hours on-­call cover, software releases of Google advertising services (AdWords, AdSense etc), close liaison with software development and other SRE teams.

Within the Ads Frontend SRE team, I was responsible for administering globally distributed highly-available (99.9999% uptime), high-QPS, customer-facing frontend web services and backend RPC services using custom storage layers.

This involved configuration of custom software layer load balancers, detailed load testing, analysis and capacity planning to ensure no interruption of service, even during catastrophic failure of entire clusters.

Other duties included frequent on-call duties for critical services (three and four nines), code reviews, launch reviews for new products, technical consultation and production advice to aid development teams design performant products, and regular software releases to production.

Diagnosis of problems in comonents at all layers of the application stack required knowledge of Java, C++ and Python.

During my time I developed a number of tools to aid not only my team, but many SRE teams within Google, including a tool to ensure that recently committed revisions of software were deployed in to production in a timely manner to ensure predictable and reliable service behaviour. Another tool automatically provided a central dashboard that provided a single central view of all services maintained by any given SRE team, with links to internal status and diagnostic interfaces for diagnostic and documentation purposes.

Aug 2009: The Cloud Networks Ltd, Senior Systems Engineer

Location: St. Albans, Hertfordshire, UK. Occasional travel to London data-centres.

Core Roles/Skills: Linux system administration of ~150 hosts, monitoring (Nagios/Cacti/OpenNMS/SNMP/RRD), ad-hoc automation scripting, out of hours on-call cover, infrastructure deployment & consolidation, shared support of edge and core network infrastructure.

Maintained server infrastructure (and joint responsibility of network infrastructure) to 24/7 ensure uninterrupted service to thousands of public WiFi hotspot around the Europe.

Moved servers an immutable infrastructure using diskless PXE net-boot CentOS from the network using shared NFS storage, resulting in faster deployment of additional service nodes, reduced disk failures, known consolidated and revisioned OS builds. Also implemented a Git revision controlled repository of existing production server configurations and runtime information, physical device inventory using RackMonkey and deployment of a custom patched bash shell (jointly developed with a colleague) and centralised syslog server to aid auditing from servers and network equipment, coupled with rollout of AAA against Active Directory and Radius.

2006: McAfee International Ltd, Senior Infrastructure Engineer

Location: Aylesbury, Buckinghamshire, UK.

Core Roles/Skills: Linux system administration, monitoring (Nagios/SNMP/RRD), VMware ESX VI3 virtualisation, automated infrastructure deployment & consolidation, backend LAMP software development, ad-hoc automation scripting, out of hours on-call cover.

The AVERT (Anti-Virus Emergency Response Team) division of McAfee is the core of McAfee's product development and back-office service delivery. I worked on all back-end services and infrastructure in the ASE (Anti-Spam Engineering) team within AVERT. I designed, implemented and maintained comprehensive monitoring of the ASE & AVERT worldwide infrastructure (>500 hosts, >2000 services) using a distributed 10 node Nagios deployment and a custom installation of my open source RRD monitoring software.

Designed and implemended PXE network boot servers and Kickstart with RHEL & CentOS to standardise rapid server deployment. Played a central role in further consolidating existing physical infrastructure through VMware ESX VI 3.5 cluster and NetApp SAN and NAS storage.

2005: BBC Technology, Internet Operations, UNIX Engineer

Location: Maidenhead, Buckinghamshire, UK. Occasional travel to BBC White City in London.

Core Roles/Skills: Perl software auditing, participating in Perl coding standards guidelines working group and Internet Operations steering meetings, system administration, monitoring (in-house solution/RRD), ad-hoc automation scripting.

BBCT provide and manage the BBC's online internet presence at www.bbc.co.uk and news.bbc.co.uk. I worked in a team of nine UNIX engineers who managed a large farm of Solaris Apache web servers, mod_perl application servers and Real streaming servers at multiple locations throughout the UK and US. My primary responsibilities were managing the core mod_perl application server farm and security auditing Perl code before deploying into production.

Other projects I managed included migration of mod_perl instances from Perl 5.004 and 5.6.1 to Perl 5.8.7, development and implementation of automated mod_perl server performance monitoring and analysis tools, and a multithreaded rewrite or an in-house Perl server fleet monitoring suite "statuschk".

2004: BBC, Interactive Factual & Learning, Software Engineer

Location: White City, London, UK.

Core Roles/Skills: Linux, Solaris & Windows system administration, database administration and development, monitoring (Nagios/RRD), backend CMS and customer facing LAMP software development for www.bbc.co.uk, software peer-review, ad-hoc automation scripting.

Working within a team of six other software engineers responsible for maintaining the CMS and development servers (Linux, Windows and Solaris), developing new Perl applications and reusable development tools for the department, webmasters, technical project managers and client-side developers. Primary technologies were Perl, Apache, mod_perl, MySQL and Oracle 8 and 9. Examples of iF&Ls work were the integration of interactive technologies for "Test The Nation" and "The Big Challenge".

2001: Frontier Internet Services Ltd, Network Operations Engineer

Location: Isle of Dogs, Docklands, London, UK. Frequent visits to datacentres in Docklands.

Core Roles/Skills: Linux system administration, building core and customer managed server hardware, on-site customer leased-line installations, network administration, administration of all online customer services (Exim, Apache, BIND, QPopper, ProFTPD etc.), monitoring (in-house solution/MRTG/RRD/SNMP), ad-hoc automation scripting, out of hours on-call cover.

I worked in the core Network Operations Centre team of six in London Docklands, managing and maintaining all aspects of core servers, services and network infrastructure. We exclusively used Linux on our servers (primarily Red Hat 6.0 through to Red Hat 8.0), which helped me develop strong Linux administration skills. I also learned to configure Lucent/Ascend NAS (Network Access Server) hardware and Cisco 1600 & 3600 series routers. My Cisco router knowledge played an essential role during configuration of leased line installations while visiting customer offices. During my time at Frontier I developed an appreciation of the Exim MTA and MySQL, and how to integrate them into highly flexible and performant mail routing and delivery farm. Other responsibilities included server provisioning (from building server hardware, to installing and configuring both operating systems and hosted applications and services), CGI application development, ad-hoc systems automation programming in Perl + shell scripting, and 24 hour out of hours on-call for network emergencies.

2000: Optio Software UK Ltd, Technical Consultant

Location: Frequent travel to customer sites all over Europe. Occasionally working from home or the Worcester or Paris offices.

Core Roles/Skills: Designing and programming business documents for customers in OptioDCS DCL, teaching customers DCL scripting language, on-site software installation and troubleshooting, project management, on-site customer support.

I worked in a small team for UK and European operations (four in the UK, ten in France), primarily focused on customer specified programming projects. My responsibilities included managing projects from initial concept to installation, programming, through to final user acceptance testing, documentation and project completion. Also included training customers OptioDCS DCL programming language and general product support for all Optio Software products. I was frequent required to visit customer sites throughout the UK and Europe which required a high degree of professionalism and self-confidence. Major projects included writing document generation code for Dell EMEA and HJ Heinz including invoicing, statements and order acknowledgments. Troubleshooting and integration with various host UNIX and Windows operating systems and often unfamiliar customer software installations was an integral part of my duties, which required good analytical skills and the ability to quickly adapt and learn on the job.

1996: Interactive (UK) Ltd, Software Integration Programmer

Location: Watford, Herts and subsequently High Wycombe, Bucks offices. Frequent travel to customer sites in the UK and around Europe.

Core Roles/Skills: Customisation programming in UniData and SB+ of the Infoflo and Avanté ERP / MRP products to customer specification, telephone and on-site customer support, teaching OptioDCS DCL training courses, integrating a host of third party products in to the Infoflo and Avanté ERP /MRP products.

Responsibilities included on-site installation and integration of third party products in to the Avanté ERP database. Including custom development, sales demonstrations and training with COGNOS ODBC, Smart Forecasting, BACSTEL, UniData RDBMS, OptioDCS and OptioFAX. I gained experience with many flavours of UNIX during this time, including HP-UX, AIX, DG-UX, SCO, Solaris and Linux.