About me
I have written tools that raised the productivity of development teams by 300% and have mentored DevOps Fellows who have become Engineers in various organizations. I have a passion for automation and for solving developer productivity problems.
Professional Experience
Settl.me, DevOps Engineer
(January 2022 - August 2022)
- Created CI/CD pipelines for deploying Nextjs applications to AWS EC2 and AWS CodeDeploy using BitBucket pipelines.
- Deployed the company website on EC2 instances and managed deployments with AWS CodeDeploy.
- Used AWS CloudFormation (Infrastructure as Code) to deploy infrastructure for applications.
- Deployed APIs through the AWS API Gateway.
- Refactored infrastructure to lower costs.
- Wrote in-house utility Perl script for setting up AWS ECR repositories for microservices.
- Setup AmazonMQ(with RabbitMQ broker) and AWS ElastiCache (Redis) for backend applications.
- Setup CloudWatch for logging API Gateway events.
- Provisioned servers (EC2) and databases (RDS) for the company’s projects.
- Setup CI/CD pipelines for backend applications using AWS CodeDeploy, CodeBuild, and CodePipeline.
- Deployed Dockerized services into AWS Kubernetes clusters.
The Bulb Africa, DevOps Engineer
(April 2021 - December 2021)
- Headed the company’s DevOps Unit.
- Mentored DevOps Engineering Fellows during training programs.
- Setup CI/CD pipelines for frontend applications using AWS CodeDeploy, CodePipeline, CodeBuild, and S3.
- Setup CDN for frontend applications (React and Angular) with AWS CloudFront.
- Setup site-to-site VPN connections with AWS.
- Containerized dotnet applications using Docker.
- Setup DNS records on AWS Route53.
- Configured hosted zones on AWS Route53 for externally hosted domains.
- Setup SSL/TLS certificates for company-owned domains using AWS Certificate Manager (ACM).
- Administered servers running Linux Ubuntu.
- Backed up and restored Amazon Machine Images (AMIs) across accounts and regions.
- Setup Wordpress site with AWS Lightsail
Primerook, DevOps Engineer/Android Developer
(September 2017 - May 2021)
- Developed mobile applications for Android using Java and Gradle for builds.
- Design the company’s website using Bootstrap, HTML, and JavaScript.
- Setup VPS Infrastructure to host company infrastructure.
- Used Git, BitBucket, and BitBucket pipelines for version control and CI/CD.
- Wrote helper scripts in Perl to process files and extract data.
- Setup CI/CD pipeline to automate the deployment of Android applications.
Javaplus Innovations, Software Developer
(December 2016 - September 2017)
- Developed backend applications using Java and Spring.
- Implemented unit testing for applications using JUnit.
- Managed builds for Java applications using Gradle as the build tool.
- Designed applications’ data tier using MySQL.
- Wrote scripts to automate and simplify some steps of the software development process.
- Containerized Java applications using Docker.
Afrinolly, Sever Administrator/iOS Developer
(December 2014 - July 2016)
- Setup EC2 servers and RDS databases on AWS.
- Administered Linux Ubuntu instances.
- Fine-tuned Nginx to improve performance.
- Setup AWS Autoscaling and Elastic Load Balancer for high scalability.
- Developed applications for iOS using Swift and XCode.
AXA Mansard, Software Development Intern
(July 2019 - October 2019)
- Use ProcessMaker to automate processes
- Develop in-house tools
- Provide technical support
Other Experience
- Wrote an implementation for uploading large files to AWS S3 using AWS Multipart Uploads
- Refactored infrastructure into AWS CloudFormation templates
- Setup Grafana Dashboards using AWS-managed Grafana workspace
- Setup AWS Elastic Kubernetes Clusters using eksctl
Skills and Compentencies
- Setting up CI/CD pipelines with AWS CodePipelines
- Software development with Java programming language
- Spring and JUnit frameworks
- Using Gradle as a build tool
- Linux (Ubuntu) administration
- Bash scripting and Perl programming
- Version control with Git, GitHub and Bitbucket
- Windows development with VisualBasic.NET
Projects
- Beanmaker(Perl), Tool for generating Java beans and DAOs from MySQL scripts
- PM Utility(PhP), For scripting form design process in ProcessMaker
- Toph(Bash), Bash script that enforces a git workflow
- Katon(Perl), A simple text-replacement macro processor written in Perl
- Ticked(Perl) , Parser for a custom markdown flavour
- Derml, This is just another configuration file format that also claims to be really minimal
Other Stuff
- Solved the first two steps of Deji’s Mashup method for solving the Rubik’s cube (VB.NET)
- Used Genetic Algorithm to solve the Knight Tour Problem (VB.NET)
- Used Retrograde Analysis to solve the game of Nim (VB.NET)
- Inane esoteric language written in Java
- Extracting logarithms on an abacus