Kevin Cross

Last updated: 2022-02-09

Profile

I am an Engineer with 20 years software development and automation experience with exposure to the full development life-cycle including requirements gathering, specification, design, development, automated testing, continuous integration, deployment and production support.

I now specialise in following DevOps practices to help development teams deliver high quality systems through the use of fully automated build, analysis, environment management and application deployment.

I am diligent and delivery focused with experience of working alone and in large multi-site teams.

I have a wide range of technical skills and I am always keen to learn more.

My experience in a variety of roles has taught me the importance of effective communication and mutual understanding to a productive and enjoyable working environment.

Main Technical Skills

Cloud

Amazon Web Services (AWS), Google Cloud Platform (GCP)

Infrastructure as Code

CloudFormation, Terraform, Packer, Chef, Vagrant, Berkshelf

Container technologies

Docker, Kubernetes, Docker Compose, OpenShift

Monitoring

CloudWatch, AppDynamics, Prometheus, Grafana, GCP Stackdriver

Build and CI/CD Tools

Gradle, Jenkins, Make, Maven, Grunt, Ant

Services

Nexus, Sonar, Rundeck, Gitlab

Languages

Python, Bash/Shell, Go, Groovy, PowerShell, Java, SQL

Operating systems

CentOS/RHEL (since 5), Ubuntu (since 6.06), Windows Server 2019

Certification

  • AWS Certified Solutions Architect - Professional (Validation Number M0JMS8721BQQ1E5G)

  • AWS Certified Solutions Architect - Associate (Validation Number T7QWQ81CBEFQ1HCP)

Employment History

Insights, October 2019 - Present

I am engaged at Insights as a contract DevOps Engineer.

Duties

  • Participation in a data centre to AWS migration project for the primary customer facing web application (Windows/IIS/SQL Server).

  • Primary Engineer responsible for day to day monitoring, operations, investigations and incident resolution for the primary customer facing web application at Insights.

  • Infrastructure automation in AWS to support new and existing web applications.

  • Coordinate and resolve third line support issues.

  • Document and share operational procedures.

  • AWS cost control and reduction.

  • Data analysis in support of issue investigation and resolution.

  • Coordinate work with internal and external partners.

  • Maintain and improve platform security with the in house security team.

Achievements

  • Firewall analysis and improvements to improve application security.

  • SES email bounce and complaint analysis and improvements to increase email delivery rates and reduce user issues cause by undelivered email.

  • Replaced AppDynamics based monitoring with custom Lambdas and CloudWatch to remove cost for an under utilized AppDynamics license and improve monitoring.

  • Created a fully automated IIS app pool recycling process with automated testing to prevent intermittent issues during daily restarts.

arc-net, December 2018 - September 2019

Infrastructure, Service Delivery and SRE engineer in a small start up. Working to support all the goals of the software development team and the business.

Duties

  • Run operations for all services initially from AWS and then GCP.

  • Investigate and resolve service issues.

Achievements

  • Migrating all Kubernetes based services from AWS to Google Kubernetes Engine (GKE).

  • Proposing an improved GitHub Issues based workflow for the team and implementing tools using the GitHub API to deliver the improvements.

  • Creating backup verification automation using AWS Lambda.

  • Adding Prometheus and Grafana based monitoring to the AWS Kubernetes cluster.

Cloudreach, January 2018 - October 2018

DevOps team lead working in an Agile framework and responsible for engineering work, mentoring engineers, planning and contributing to organisational culture.

Engagements

  • Lead Engineer on a 10 engineer engagement with a large insurance company working to implement their cloud delivery platform on AWS.

NCR, July 2012 - January 2018

Lead build and automation specialist at NCR Edinburgh responsible for leading the build and IT team, providing for the needs of development teams and managing work in an agile environment using Kanban.

Projects

  • Automating Linux system build and deployment using Gradle, Docker, Docker Compose, OpenShift, Chef, Vagrant, Packer, Berkshelf, Test Kitchen and Ganeti.

  • Automating application deployment of web apps and supporting services onto Linux hosts.

  • Continuous Delivery environment maintenance and improvement.

  • Troubleshooting and advising on builds using various build systems.

  • Training and supporting colleagues in Linux and build tool usage.

  • Sharing knowledge of system automation tools and techniques to other sites in the organisation.

Achievements

  • Implemented system integration deployment environments using Gradle, Docker and OpenShift resulting in the more robust, simplified environments with better resource utilisation and the ability to test more environment and version combinations.

  • Introduced and applied the Jenkins Job DSL Plugin to replace manual job maintenance with configuration as code resulting in easier management of basic CI jobs, no divergence of job configuration and the ability to easily create CI jobs for support and feature branches.

  • Configured Continuous Delivery pipelines and visualisation in Jenkins.

  • Added Docker to our set of tools for building applications, packaging applications and running internal services.

  • Introduced infrastructure automation with Chef to create and maintain Jenkins build nodes resulting in more consistent build environments with no 'snowflake servers', easier deployment of new tools across all build nodes and push button creation of new nodes.

  • Created Gradle and Rake plug-ins to automate release processes resulting in less developer time spent on repetitive and error prone tasks.

  • Used Chef to automate build and deployments of integration test environments resulting more consistent environments documented in code.

  • Created custom wall-boards to give better visibility of various aspects of build status.

  • Introduced OWASP Known Vulnerability plug-in builds to discover known security issues in project dependencies.

  • Created a Maven plug-in to use in our builds to alleviate problems related to a long standing Maven defect.

  • Advocated a move to Git and migrated a number of projects from Subversion.

  • Introduced services such as HashiCorp Consul and Prometheus monitoring to our build and development environments resulting in higher degrees of automation and system visibility.

JP Morgan - Investment Bank, September 2007 - July 2012

Software Engineer also involved in tertiary support, build support, code quality and release & configuration management as part of a global team.

Projects

  • Distributed deployment and management information tool using Groovy and Groovlets on Linux (RHEL).

  • Automated acceptance and system integration test framework using Java, Groovy and Concordion.

  • User management web application in Groovy/Grails.

  • Risk management application development in Java on Linux.

Achievements

  • Improved automated testing framework resulting in an expanded set of tests, greater visibility of tests and results and easier defect identification.

  • Created a distributed environment information and control tool to enable scaling up to over 100 deployed environments.

  • Improved the user management web application freeing the development team from user maintenance tasks.

  • Improved release train tooling reducing development overhead.

  • Key developer for an application responsible for features, deployments and tertiary support.

  • Restructured the Domain Model of a key application resulting in improved application performance and increased developer productivity.

Detica, March 2006 - September 2007

Employed as a Consultant working in both business and technical areas. I worked alongside other Detica consultants and client employees.

Projects

  • Requirements gathering, design and development of a J2EE web application for delivery to HM Revenue & Customs over several phases.

Achievements

  • Produced the Logical and Physical design for a unified Audit gathering and reporting component as part of the set of deliverable documents.

  • Conducted interviews and workshops with key stakeholders to produce business definition and requirements documents as part of the deliverable documents.

  • Automated build and deployment of the application into a Solaris environment to enable continuous integration and testing resulting in an improvement in the quality of software delivered to the test team.

  • Built and managed a complete application environment (WebLogic, Oracle, Exchange and SunOne Directory Manager) on a single desktop machine for training and customer demonstrations.

FDM, August 2003 - March 2006

Trained in Java SE, Java EE and Oracle. Then worked as an external consultant for FDM from January 2004 to March 2006.

FDM Consultancies:

Jane’s Information Group, January 2004 - January 2005

Initial one month contract for a short term project and then retained for one year working on a number of different projects.

Projects

  • Design, development and testing of a new Java web application.

  • XML migration between two XML definitions using XSLT, Perl and libxml2.

  • Custom XML and HTML to RTF conversion using Perl and libxml2.

Achievements

  • Introduced new development tools to the development team (CVS, IDE) resulting in a more stable development environment for a newly expanded team.

  • Improved data quality by adding reporting functionality to data conversion processes.

Detica, February 2005 - March 2006

Started at Detica as an FDM consultant and became a full time Detica employee. See above for details.

Mayne Group, July 2001 - March 2002

A contract to maintain and support a number of different logistics management applications developed in C, Bash and Perl scripts in a Solaris environment.

Primary duties included defect resolution, new feature development, tertiary support, installation and testing of an old and complex legacy system implemented in C.

Achievements

  • Took responsibility for a web application resulting in additional functionality and documentation for previously undocumented design and features.

  • Developed a centralised electronic invoice with email delivery for a major customer resulting in a satisfied customer and an ongoing relationship with our sales team.

Nortel Networks, September 1997 - October 2000

Software Engineer member of a team that implemented a Fixed Wireless Access system. Primarily C development across server, embedded and hand-held platforms.

Achievements

  • Migrated the development of a system component between sites and took over as the System Component Prime without interruption to the program.

  • Executed major upgrades on customer sites resulting in uninterrupted operations.

  • Designed, implemented and tested a new base station software module resulting in the software being ready for release within the ambitious time frame of the larger project.

  • Created and documented the ISO9000 quality process for a system component contributing towards the department keeping its ISO accreditation.

Education

M.Sc. in Information Technology, 1997

Heriot-Watt University (Edinburgh, Scotland)

B.Sc. in Physics, 1994

University of Glasgow (Glasgow, Scotland)