Mike M. Expert Golang Engineer

Back-End Web

Summary

- A software developer with 7+ years of experience;
- 5 years of Golang experience, building applications, tools, and services/micro-services;
- Experienced in developing web and network applications using PHP and Golang;
- Proficient in containerizing services with Docker and Linux servers;
- 8 years of Linux expertise;
- Follower of good engineering practices such as test-driven design, pair programming, continuous integration,
and refactoring. Committed to good coding principles such as SOLID, DRY, TDD etc.
-Upper- Intermediate English
- Available ASAP

Experience

Sr. Software Engineer

July 2021 to Present
Description: A national census app will be used throughout the whole country, where it already handling millions of requests a day. I’m leading the Backend team. I made the Server-side and design network architecture to deal with huge traffic. And the backend part is written in Golang where I have been working with two other developers.
Responsibilities:
- Leading the Backend team.
- Developed/Designed highly scalable Backend systems that serve millions of requests a day.
- Developed REST APIs using Golang and Oracle by following best practices
- Developed JWT token-based authorization for APIs.
- Containerizing Golang services with Docker and deploy it to server-  Setup server and Load Balancer to handle and distribute huge traffic.
- Setup ELK stack for Log aggregation and log monitoring.
- The application is now being used nationwide in Bangladesh for doing census under the Bangladesh bureau of statistics.

Backend Developer

November 2020 to June 2021
Responsibilities:
-
Worked and developed several complete Backend architectures for various companies using Golang,
PostgreSQL, Docker, Kubernetes, AWS etc.

Software Engineer

May 2020 to October 2020
Description: It is one of the largest tech/ e-commerce companies in Bangladesh. The company has around 40-50 developers. I have joined there as Software Engineer for a site job, where I lead the Golang team. And built event-driven microservices and API gateway for the all Evaly platform. My team had 5-6 Golang developer who was working with me.
Responsibilities:
- Developed/Designed event-driven micro-service architecture for communicating services through events.
- Developed authentication micro-service for all Evaly platforms using gRPC, PostgreSQL and JWT in Go.
- Developed Order micro-service for handling all the user orders of Evaly using gRPC and PostgreSQL in Go.
- Wrote unit test and integration test for implemented services in Go.
- Wrote code with unit testing for most cases and implemented integration testing with Go and PostgreSQL.
- Worked on writing eJabberd module in Erlang.
- Worked with Go and MongoDB for existing code base conversion.

Back-end developer

July 2019 to April 2020
Responsibilities:
- Developed the backend/ web services for including the authentication system.
- Building and optimizing https://upskill.com.bd/ online system to make it more stable and efficient use
Golang and PostgreSQL.
- Developed full backend system for multiple projects using Go and PostgreSQL.

Software Developer, (Remote)

January 2019 to June 2019
Description: The project was about Battery Management System, the application would monitor, set up and configure the power of the Battery stack. I worked with a few other fellow developers to build the application in Golang.
Responsibilities:
- Developed a CLI application for handling a large set of configurations and interacting with energy
management (BMS) system using Go. (Package used viper and tview/tcell).
- Worked on enhancing features for energy management/monitoring system application,
- Worked on implementing PID controller with Go.
- Added a new feature to the existing BMS controlling application.
- Followed Test Driven Development (TDD) pattern for writing functions or logic.

Software Developer (Remote)

June 2018 to November 2018
Description: The project was about video game digital distribution services like Steam, It was a desktop application, where users can select from the list of available games and download them, then play it through the app. I have worked in the backend team to develop the Backend and GPG key-based authorization
using Golang and MySQL. I worked with 5 other developers in the Backend team remotely.
Responsibilities:
- Developed REST APIs and services using Golang and MySQL for Stonetium desktop game delivery
software.
- Designing and building Pub-Sub-based Notification system using RabbitMQ, Redis and Golang.
- Worked on cross-compiling Golang application with Cgo for QT application.
- Containerized Golang services with Docker for deployment.
- Developed PGP key-based authentication system for the game delivery platform.
- Wrote gRPC based client and server for the instant messaging feature.

Software Engineer

February 2016 to May 2018
Description: The company has several products like chatting applications, gaming applications and social media applications. The company has around 80/90 Software developers. I worked in the Backend team along with the other 10-12 developers. Where I worked with multiple languages, like PHP, Golang, Erlang etc. Also worked in the DevOps team to setups and monitor AWS server/services.
Responsibilities:
-
Worked with the core API team to add new features to the existing codebase and wrote new REST APIs
using Laravel, Lumen and MySQL databases.
- Rewrote the REST APIs/web services in Go from PHP.
- Implemented authentication services using OAuth2 and Go for the GagaGugu app.
- Created micro-service-based architecture to build media storage and file uploading system in Go.
- Built automated services for server's load testing, stress testing, server monitoring using Go.
- Responsible for designing and building software architecture, such as message queue systems, storage systems.
- Worked with DevOps team to handle deployment in AWS and S3 server.
- Wrote module for detecting the online presence of users with XMPP using Erlang.
- Setup and maintain eJabberd/XMPP server.

Web Developer 

2014-2016
Responsibilities:
- Developed web applications using PHP and MySQL, including handling user information and storing it to
database.
- Updated/Added feature to Front-end/UI using JavaScript/jQuery.

Web Application Developer

2014 – 2015
Responsibilities:
- Developed the company website of Zoetrope using PHP and MySQL, updated the previous UI and made it dynamic with JavaScript.
- Deployed and maintained the webserver.

Education

Diploma in Computer Engineering, MCET Polytechnic Institute, Dhaka, Bangladesh.

2005-2009