Currently a backend web engineer with industry experience in building e-commerce and data driven applications for organizations. A somewhat open-source enthusiast and an avid pursuer of good development practices. Forever a learner.
Experience
Crunch.io
Aug 2022 – Jul 2024
Toronto
Python Engineer
Part of the infrastructure team
- Worked partially on metadata migration to the new format.
- Working to migrate the current task system that's running on celery on python 3.6 to rabbitmq operated task system that will be using lighter payloads and single threaded consumers. Our aim is to have:
- single threaded workers
- worked on writing old code to the latest python 3.11 compatibility
- worked on maintaining better and more quality test coverage
- worked on improving visibility of errors and system tracebacks, using logs, stack trace dumps for threads and grafana metrics.
- Define and deploy services using k8s onto AWS EKS clusters
- Responsible for starting and maintaining new AI backed indexing services for our existing data stores.
- Responsible for coming up with github workflows and CI/CD pipelines to better manage testing and deployment for our projects
- Participated in cross platform training and involved myself with different projects based on need and urgency.
- Collaborated with operations team to get project delivered across different environments.
- Actively debug issues in our cloud deployment environments with the help of tools such as:
- kubectl
- datadog
- honeycomb
Corner Case Technologies
Aug 2021 – Aug 2022
Lithuania
Software Developer
Projects:
- GlobeTrott: A travel buddy application for people looking to have the best travel experience around the world.
- PropertyMatch: Property Management application dashboard for both property listings and buyers
- HeyCharm: E-commerce site for health and beauty
- Sherlook: Insurance information and help website
- Sibill: Payments, reconciliations, cash forecasts management application for companies
- Develop test and manage various backend applications (API development and maintenance) on a project basis.
- Identify and address potential performance bottlenecks. Some notable resolutions include:
- Using both templates and without to build a standing project
- Ensure the use of container technologies like docker and docker-compose to keep the application development experience environment independent.
- Using the built in ORM, was able to improve query performance by almost 76%.
- Introduced pagination, filtering and migrations in existing backend projects
- Maintain a testing coverage of at least 85% at all times
- Code review
- Collaborate with other lead engineers, clients and managers to find the best way forward
- Maintain clear and precise communication across all channels
- Third party API integration
- Guide and help fellow developers
- Review, plan and execute requirements with clients and project managers
Tech Stack: Python, Postgres, MySql, Git, Bash, Docker, CI/CD, Flask, FastAPI, Alembic, Redis (cache/worker), Memcache
Architectures: Monoliths (highly available), microservices
Cloud services: AWS
Third Party AP Integrations: Local payment API gateways, Stripe, Facebook, Google, LinkedIn
ZS Solutions
Feb 2020 – Jul 2021
Dhaka, Bangladesh
Senior Software Engineer
- Involved in projects concerning in connecting people to public health services and restaurant management systems.
- (Re)Introduced automated testing in legacy application. Improved coverage by 5% as the sole individual taking responsibility for testing amidst other fellow backend engineers.
- Inducted new project microservice architecture, from local to production deployment.
- Setup docker environment settings and configurations for new projects.
- Ensured overall high test coverage for new projects. As per my last contributions the overall coverage was at 88% on average
- Ensured automated deployments.
- Ensured proper placement of tools for documentation and bug reporting.
- Introduced self hosted websocket server (Centrifugo) for notifications.
- Setup secure payment transactions and updates using Stripe.
- Open source contributions to libraries we use on our daily development lifecycles.
- Mentored fellow developers on proper development methodologies and best practices.
- Customized default admin dashboards provided by Django for better user and testing experience.