
Mohammad Alavi
Verified Expert in Engineering
Software Developer
Cyberjaya Selangor, Malaysia
Toptal member since April 7, 2020
Mohammad is a software architect and DevOps engineer with over 10 years of experience designing and developing enterprise Java applications that handle large volumes of transactions. He spent over half of his career in the banking industry and developed the fastest application to calculate and deposit interest for multiple banks in Iran. Mohammad is also an expert in test automation, building CI/CD pipelines, and infrastructure provisioning.
Portfolio
Experience
- Java - 10 years
- Ansible - 3 years
- Docker - 3 years
- Amazon Web Services (AWS) - 3 years
- Azure - 3 years
- Kubernetes - 2 years
- ELK (Elastic Stack) - 2 years
- Terraform - 1 year
Availability
Preferred Environment
IntelliJ IDEA, Visual Studio Code (VS Code), Sublime Text, Docker, Ubuntu, MacOS
The most amazing...
...application I've developed was for the banking industry. It calculated interest in less than 10 minutes for six million accounts.
Work Experience
DevOps Lead Engineer | Infrastructure
Complion, Inc.
- Migrated Azure Kubernetes Service (AKS) clusters from the legacy infrastructure and configured virtual machines (VMs) availability to VM scale with zero downtime.
- Migrated Azure SQL Database for PostgreSQL from version 9.6 to 11.11 using Azure Database Migration Service (DMS), with less than 10 minutes of downtime.
- Upgraded Terraform IaC provisioning configurations from version 0.13 to 1.0.
- Implemented CI/CD pipelines specifically designed for microservices that will handle tasks such as code building, unit testing, container image building, and Kubernetes cluster deployment.
- Enabled Datadog APM for performance visibility, cutting monitoring costs by 60% through optimized log ingestion. Optimized Elastic Stack (Elasticsearch, Kibana, Logstash, Beats), reducing storage costs by 40%.
- Built a Cypress-based E2E testing framework with 90% coverage and 70% faster execution. Developed consumer-driven contract and BDD tests with tools like Pact, Testify, LocalStack, and Cucumber in CI/CD pipelines.
- Improved the performance of PostgreSQL and MongoDB queries by identifying and generating suitable indexes and rewriting queries to minimize I/O costs.
- Implemented GitOps with Azure DevOps for microservices CI/CD, enforcing security with Trivy, Snyk, and SonarQube. Architected Kubernetes deployments with Helm, Kustomize, and ArgoCD for streamlined GitOps workflows.
- Built scalable messaging with NATS and RabbitMQ, integrating OpenTelemetry, Jaeger, and Prometheus for monitoring.
- Deployed Kubernetes clusters on Azure and AWS with automated certificate provisioning, DNS, and monitoring using CNCF tools.
Software Architect
Freelance
- Wrote unit tests to enable refactoring of legacy code and catching bugs introduced during refactoring.
- Set up and imported new projects into IDE. Created documents for team members on how to set up their environments for new projects.
- Reviewed developers' work and consulted them to ensure they met the quality bar standards.
- Developed Jenkins CI/CD pipelines for code base as large as tens of millions of lines with complex sets of unit/integration tests and provisioned AWS EC2 instances as Jenkins agents.
- Ensured written tests met quality standards in terms of test coverage and quality by utilizing tools such as JaCoCo and Cobertura for test coverage and PIT mutation testing for quality.
Senior Java Developer
Samen Ertebat Asr
- Developed an online website for bank customers to top up their accounts and pay their loan installments through a payment gateway.
- Built an application to send cards generated in the core banking system to an external ATM switch program.
- Designed and developed an ATM switch and ATM client applications and connected them to the core banking system.
- Performance-tuned queries with high amounts of latency and I/O consumption.
- Reviewed other developers' code to make sure they followed coding standards and best practices before applying changes to productions.
Lead Java Developer
Behestan Rayan
- Developed a core banking system that served more than 20,000 tellers across the country.
- Built the fastest application for calculating interest, which took only ten minutes to calculate interest for approximately six million bank accounts.
- Designed and developed an application that automatically updated bank client applications when a new version was available and this was done with minimum consumption of network bandwidth in order to be suitable for low bandwidth environments.
- Designed and developed an Oracle version control system to allow developers to have separate accounts and merge changes from all developers into one single script file.
- Reviewed other developers' code to make sure they followed coding standards and best practices before applying changes to productions.
Senior Java Developer
Khaje Nasir University
- Developed a J2ME mobile application for creating and viewing galleries.
- Built a portal for the National Iranian Oil Company that enabled customers to request a new gas card, report lost cards, and view their application status.
- Created a system that integrated the national post system to the gas card portal. This allowed customers to receive their cards through the post and view their order status.
Experience
Interest Calculation App
Running Tests in Parallel with Jenkins Pipeline
Incremental Update Application
Education
Bachelor's Degree in Computer Science
Islamic Azad University Central Tehran Branch (IAUCTB) - Tehran, Iran
Certifications
CKAD: Certified Kubernetes Application Developer
The Linux Foundation
CKS: Certified Kubernetes Security Specialist
The Linux Foundation
CKA: Certified Kubernetes Administrator
The Linux Foundation
AWS Certified Advanced Networking — Specialty
Amazon Web Services
Skills
Libraries/APIs
JDBC, JaCoCo, jQuery, Sockets, JasperReports, Java API for XML Processing (JAXP), JavaMail, React, Node.js
Tools
Ansible, Jenkins, Apache Maven, Gradle, Amazon EKS, Azure Kubernetes Service (AKS), Helm, Kafka Streams, Amazon Simple Queue Service (SQS), Amazon Simple Notification Service (SNS), GitHub, GitLab, GitLab CI/CD, ELK (Elastic Stack), Jira, Bamboo, Vagrant, Sublime Text, IntelliJ IDEA, SonarQube, Servlet, TeamCity, Terraform, Kibana, Logstash
Languages
Bash Script, Java, GraphQL, Bash, Go, Groovy, Python, C, Swift, Objective-C, Kotlin
Frameworks
Selenium, JavaServer Faces, PowerMock, TestNG, Ant Design, JUnit, Mockito, Spring, Spring Boot, Jakarta Server Pages (JSP), jPOS, Swing, JSF, PrimeFaces, Hibernate, ICEfaces, Angular
Paradigms
DevOps, Continuous Integration (CI), Continuous Delivery (CD), Azure DevOps, Test Automation, REST
Platforms
Docker, Google Cloud Platform (GCP), Apache Kafka, Amazon Web Services (AWS), Linux, Azure, Oracle Database, MacOS, Ubuntu, Visual Studio Code (VS Code), J2ME, Android, iOS, Kubernetes
Storage
Oracle PL/SQL, Datadog, Elasticsearch, JBoss AS, MongoDB, Redis, MySQL, PostgreSQL
Other
Cloud Infrastructure, Infrastructure as Code (IaC), AWS DevOps, Amazon RDS, Argo CD, Argo Workflow, Tekton, CI/CD Pipelines, GitOps, Cloud Architecture, GitHub Actions, Cloud Platforms, SOAP, Enterprise Java Beans (EJB), RESTful Web Services, XFS, Liferay, Networking
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring