SOFTWARE ENGINEER @ WELLINGTON, NZ

MIAL LEWIS

//

PERSONAL PROFILE

Software Engineer with 6 years of experience. Led and worked on a wide range of successful projects for a variety of demanding clients, utilising a variety of different technologies. Focus on the application of computing and data science to provide solutions to complex real-world challenges. Looking for fixed-term work in New Zealand.

TECHNICAL SKILLS

Languages

C++, C, Python, Visual Basic, HTML, CSS, JavaScript, CMake, Bash, Shell

Tools

Git, Github, Jenkins, Conda, Conda-build, PyPi, CMake, Qt, Node.js, Excel

Cloud

Docker, Ansible, OpenStack, Traefik, Linode, Kubernetes

Databases

Microsoft SQL Server, PostgreSQEL

Testing

pytest, nosetest, mock, ctest, google mock, coverage

EMPLOYMENT

Scientific Software Engineer, UK Research & Innovation, Oxfordshire, UK

Dec 2021 - Jan 2024

Software Development:

  • Development of new features to enable scientific analysis and calibration of scientific equipment. Creation of novel algorithms to improve efficiency and accuracy of results. Employed agile methodology and test-driven development. Core Languages C++ and Python.
  • Provision of Qt GUIs to optimise workflows and enhance user experience.
  • Maintenance and upgrade of a large codebase, including refactor of legacy code, bug fixes, replacing depreciated technologies, and ensuring comprehensive unit, system test and documentation coverage.
  • Developing and supporting a user base across multiple OS': Windows, OSX and Linux (Ubuntu, RHEL7, Rocky8, CentOS7).

DevOps:

  • Upgrade and maintenance of the project's CI/CD pipeline and supporting infrastructure. This involves the management of Jenkins and various other critical microservices.
  • Led migration of our physical windows and OSX Jenkins nodes to the cloud. Lowered capital expenditure and increased pipeline throughput and longevity. Cross compilation from M1 to x86 architecture.
  • Set up a staging server to reflect our production server to enable development and upgrade at reduced risk. Use and configuration of Jenkins, GitHub, OpenStack, Ansible, Docker & Traefik.
  • Role of Technical Release Manager, managing the CI/CD pipeline to enable reliable nightly and major releases. Responsibility for build scripts and handling ever evolving package dependencies.

Consulting Software Engineer, Atkins/SNC-Lavalin, Bristol, UK

Aug 2017 - Dec 2021

Technical Lead - Process Modelling Software:

  • Development of discrete event simulation software using C++, Python and Visual Basic. Creation of process models for nuclear power station processes. Led design, implementation, validation, and deployment.
  • Conception of innovative solutions to complex modelling challenges; implementation of novel functionality that provides real value and additional capability to the client.
  • Iterative development process undertaken with clients to ensure all requirements captured and delivered.
  • Analysis to inform multi-million-pound investment decisions and to guide refuelling/defuelling strategy.

Line Management:

  • Line manager to graduate engineer and summer student, responsible for onboarding, performance reviews, managing/supporting development.

ACADEMICS

Cardiff University

Sep 2011 - Jun 2016

  • MEng

    Mechanical Engineering (Year in Industry):

    1st Class Honours.

  • The School Prize for the “Best 4th Year Group Project” (Cardiff University School of Engineering).