Close

Zohaib Khan

Senior Software Engineer

Download Resume Visit Blog

About Me

You may think that this is just another static website. However, this was a project so that I can learn more about CI/CD. This server that you are on right now is actually hosted on my own home server.

My code is being deployed via Gitlab which has a continuous integration tool, so every time the master branch gets updated, a new docker instance begins to make a connection to my server and deploys the new updates! Pretty cool, huh? :-)

Experience

Matillion

Senior Software Engineer - Hub team

  • Promoted for good performance to a Senior Software Engineer

Matillion

Software Engineer - Hub team

  • Working as part of the Hub team, the project is to consolidate all Matillion products and users under a common application and authentication layer using Auth0
  • Introduced support for multiple accounts in legacy applications as we move towards support for larger enterprises
  • Integrated support for partners i.e. Snowflake to allow new Matillion accounts to spin a brand-new instance with a single click
  • Implemented invitation creation for users to allow them to invite new members into an account
  • Spearheaded the design & implementation of AWS Lambdas in Go, which persists of most of the Hub architecture today with infinite scalability in mind
  • Introduced Pact contract testing into our backend to increase the robustness of our APIs during development and give a higher level of confidence in our upstream services
  • Introduced best team working practices such as pairing and mobbing fully remotely
  • Delivered several company-wide workshops on the use of Datadog to improve our current metrics, Contract testing & Hexagonal design
  • Using Golang, Java, React, Vue.js, Pact, AWS, Docker, DynamoDB, MySQL, ECS, Swagger, Auth0, Scrum

MoneySuperMarket - Manchester City Centre

Software Engineer - Extinguish team

  • Spearheaded the utilization of AWS integration into our ecosystem, working with head of DevOps, this included performing a company wide presentation with 100+ participants regarding Serverless and using it with our current and legacy systems
  • Developed a Spring boot K8s microservice to migrate legacy MSSQL to an RDS PostgreSQL DB in a performant way using JMS, Flyway & Testcontainers
  • Developed a Spring boot K8s microservice to bulk index RDS PostgreSQL JSON entries to Elasticsearch using Hibernate, Flyway & Testcontainers
  • Established a Java AWS Serverless pattern using Quarkus & SAM, secured with VPC & IAM in a redeployable and repeatable fashion, with response times of ~50ms
  • Established a front end pattern written in Vue that is stored on S3, fronted by a CDN and invokes an AWS lambda. As well as integrating it with Okta for authentication
  • Successfully delivered insurance/energy renewal email service which is responsible for 30% of company revenue (approximately £120m) per annum
  • Heavily involved in investigating the AWS and Spring Boot SDKs to integrate a custom multi-threaded SQS producer-consumer implementation for our three main channels (Motor insurance, Home insurance and Energy)
  • Increased throughput by 100% (150 rps to 300 rps, bottle-necked by external services) via a multi-threaded & Kubernetes multi-replica solution as well as HTTP client configuration. Service was capable of publishing at a rate of 5000 SQS messages per second and consuming at 3000 SQS messages per second
  • Founded the Programming Guild, where members would regularly share coding best practices as well as host workshops company wide
  • Hosted a "Zero to Production" workshop with ~30 attendees where I helped people develop, test & deploy an AWS Lambda with API Gateway into a production environment
  • Using Java 11, Spring Boot, AWS, Docker, Kubernetes, JMS, RDBMS, Hibernate

MoneySuperMarket - Manchester City Centre

Software Engineer - Oxygen team

  • As part of the energy team, I work on the final part of the user journey when our service switches their energy provider for them without leaving the site
  • Using Java 8, Spring, Docker, AWS, JS, JUnit, Mockito, GitHub/Bitbucket & IntelliJ in an agile environment

The Hut Group - Omega, Warrington

Software Engineer

  • Promoted for good performance to a mid-level Software Engineer

The Hut Group - Omega, Warrington

Graduate Software Engineer

  • Developing on a large scale custom built Java & Spring web application that runs the warehouse, from front end for administrators to the back end for better stock allocation
  • Independently completed a high-value project which introduced a new workflow that allowed goods-to-man picking of products, freeing up a large portion of the warehouse floor as well as reducing staff requirements in the dozens, which was highly commended by tech leads and operations managers
  • Improved performance of bottlenecks using data structures and algorithms knowledge
  • Created dashboards using Appdynamics for better visualisation for product owners
  • Other tasks include deploying releases, regular on-call as well as live instance debugging
  • Using Java 8, Spring, JUnit, Mockito, Linux, JIRA, GitHub & IntelliJ in a Scrum environment

Global Rahmah Foundation - Manchester

Part-time WordPress Developer

  • Developing WordPress front/back-end as well as maintenance of site
  • Reduced server memory and load times by seconds through caching, image compression and cloud file storage, allowing us to serve high resolution images

Manchester University Islamic Society – manchesterisoc.com

Campaigns Subcommittee Leader & Webmaster

  • Organized & led social, religious & educational events for 4000+ students on campus
  • Co-led a two-week charity campaign raising £38,500+ vs record of £15,000
  • Redesigned website to improve user experience and performance

Education

University of Manchester

Sept 2014 - June 2017

Bachelor of Science (Honours) in Computer Science 2:1

Loreto College

Sept 2012 - June 2014

A levels: Maths A* Spanish A Further Maths B Physics B

Projects

logo

Blog Website containerisation project

  • Created WordPress blog with docker-compose utilizing automated SSL certificate renewal services backed with NGINX
  • Migrated personal website to use docker containers to make deployments and dependency management easier
  • For more information, see my blog post
logo

Personal website project (You are here!)

  • Cloned an existing project to Gitlab repository to make use of continuous integration and learn about deployment architecture as well as server maintenance
  • Created a pipeline using a yml script that is executed whenever the master branch is updated via a docker instance which securely connects to my Raspberry Pi web server at home and deploys new updates
  • Created fully functional blog from subdomain which is maintained and used by myself
University of Manchester logo

Bookshelf Spine Reader (Computer Vision) - Grade 71%

  • Text recognition program for reading spine text of books across a bookshelf for visually impaired users using several Computer Vision techniques (Matlab)
  • Wrote 6000 word report covering approach, implementation & testing/reflection
View Screencast View Report
udacity-logo

Udacity Android Fundamentals Nanodegree by Google

  • Made 5+ Android applications (see GitHub) as part of the course. Amongst other things I learned the basics of Android, SQLite, creating CRUD apps, threading and interacting with HTTP services/APIs such as the Google Books RESTful API
  • Final project was an inventory management app to track item sales, product images & email suppliers
View Final Project

Skills