Cloud platform engineer on the IaaS/PaaS team โ I design and build the object storage, event-streaming and billing systems that power Digikala's internal cloud and its external customers, working primarily in Go and Python.
Digikala is Iran's largest e-commerce platform, serving tens of millions of users with a huge
product catalog, competitive pricing and nationwide delivery โ all backed by a large in-house
technology organization. I work on the Cloud team, which builds Digikala's internal cloud
platform and a public cloud offering: S3-compatible object storage (OSS), Compute-as-a-Service
and Kubernetes-as-a-Service. My focus is the storage and billing layers that sit underneath
those products and have to stay fast and correct under heavy, continuous load.
- Built and maintained Python microservices on the Nameko framework, communicating over RabbitMQ via RPC. This decoupled, message-driven design lets each service scale and deploy independently, without tight coupling between teams or components.
- Used Redis for distributed locking and caching to keep state consistent across many service instances, PostgreSQL and MySQL for transactional data, and ElasticSearch for fast full-text search โ choosing each datastore based on the access pattern it had to serve.
- Integrated Casbin to provide a single, centralized authorization layer across all microservices, so access-control rules and security policies stay consistent everywhere instead of being re-implemented (and slowly drifting) service by service.
- Designed and built the full Object Storage Service (OSS) experience in the cloud panel, integrating with Ceph RGW to expose S3-compatible storage. It shipped as a core part of the team's OSS, Compute-as-a-Service and Kubernetes-as-a-Service offerings.
- Architected and implemented a high-performance, S3-compatible gateway in Go that sits in front of the underlying storage and exposes custom OSS features with low latency and high throughput.
- Re-architected the billing and pricing pipeline for throughput and reliability: rewrote it from Python to Go, consuming real-time usage events from Kafka in a custom wire format, processing them in-stream, and persisting metrics to ClickHouse for analytics and accurate billing.
- Led a team effort to migrate critical cloud applications from Python to Go, improving runtime performance and reducing resource usage across the platform.
- Worked with the surrounding infrastructure โ OpenStack for compute and Terraform for provisioning โ to keep environments reproducible and consistent across the platform.
Python
Nameko
GoLang
RabbitMQ
Redis
MySQL
PostgreSQL
ElasticSearch
Casbin
Ceph
Kafka
ClickHouse
Kubernetes
OpenStack
Terraform
Technical team lead โ I owned the architecture, technical direction and day-to-day delivery for a B2B supply-chain platform spanning logistics, fleet tracking and lending.
USCF builds digital supply chains between manufacturers and their enterprise customers, working
with large Iranian companies such as Mamut, Mihan and Saderat Bank. The platform manages freight
transportation end to end โ registering and scheduling cargo, drivers, companies and vehicles,
and tracking them throughout a shipment's journey โ and also offers credit-based financing to
businesses, with loan terms and amounts based on creditworthiness and guarantors. As technical
team lead, I was responsible for the platform's overall architecture and technical decisions, and
for guiding the engineering team that delivered it.
- Led the development team and drove the technical decisions across the platform โ from how services were structured to which tools we adopted โ while staying hands-on with the code.
- Designed the project structure and service architecture around each domain's needs, applying patterns that kept the system maintainable and able to grow over time.
- Built back-end services in PHP/Laravel, JavaScript/Express.js and Go, choosing the right stack for each part of the platform based on its performance and complexity requirements.
- Used RabbitMQ to move heavy and asynchronous work (and multi-process workloads) off the request path, improving throughput and decoupling services from one another.
- Set up the data layer: PostgreSQL and MongoDB for application data, Redis for caching, MinIO for object storage, and ClickHouse for log aggregation and analytics.
- Improved observability and troubleshooting by integrating Sentry for error tracking and Vector for log collection, so issues in production were caught and diagnosed quickly.
- Established CI/CD pipelines and Git branching strategies to automate testing and deployments and keep code quality consistent as the team shipped.
- Deployed services with Kubernetes and Docker Swarm for container orchestration, enabling scalable and reliable rollouts.
- Boosted PHP performance under load using load balancing and Swoole, handling high concurrency and serving requests faster.
PHP
Laravel
Swoole
JavaScript
Express.js
GoLang
RabbitMQ
Redis
PostgreSQL
MongoDB
MinIO
ClickHouse
Kubernetes
Docker
Sentry
Vector
Senior back-end developer โ I architected and delivered the back end for several client products at the same time, choosing and setting up the right stack for each one.
KaroStudio is a product studio that designs and ships software for clients in Iran and abroad,
ranging from web and mobile apps to custom enterprise platforms. Because projects ran in
parallel and varied widely, my job was to own back-end architecture across all of them โ
establishing each project's structure, data layer and deployment, and making sure the
technology choices fit the problem rather than forcing one stack onto everything.
- Designed the project structure and architecture for each product based on its type and requirements, applying patterns that kept the codebases clean and scalable.
- Built back-end services primarily in PHP/Laravel, JavaScript/Express.js and Go, picking the stack that best matched each product's needs and timeline.
- Customized Laravel Voyager and integrated it into projects to power admin panels and content management, saving build time on internal tooling.
- Set up and worked with a broad data layer across projects: PostgreSQL, MySQL and MongoDB for data, Redis for caching, ElasticSearch for search, MinIO for object storage and ClickHouse for analytics.
- Established CI/CD pipelines and a GitLab Flow branching strategy to keep code quality high and make deployments reliable and repeatable.
- Containerized applications with Docker so environments stayed consistent and portable from local development through to production.
PHP
Laravel
Voyager
JavaScript
Express.js
GoLang
Redis
ElasticSearch
MySQL
PostgreSQL
MongoDB
MinIO
ClickHouse
Docker
Back-end developer โ I built new services and stabilized existing ones for international web and mobile products. This is where I went from generalist web work to a real focus on the back end.
HashStudio is a web and mobile development agency that delivers digital products for clients
around the world. Working across many client projects, I built and maintained back-end services
on a varied stack and spent a good deal of time refactoring and debugging legacy code โ taking
projects that were fragile or slow and making them stable, faster and easier to maintain. It was
a fast, hands-on environment that broadened my range across languages and frameworks early in my
career.
- Designed the structure and architecture of projects according to their type and requirements, favouring patterns that kept them maintainable for whoever worked on them next.
- Debugged and refactored existing projects to improve their stability, performance and overall code quality โ often the difference between a project that limped along and one that ran smoothly.
- Built services primarily with PHP (Laravel, Yii, WordPress) and Python/Django, choosing the right stack for each product and client.
- Modelled and queried data with MySQL and MongoDB, and used Redis for caching, across a range of applications.
- Developed custom WordPress themes and plugins with PHP, HTML, CSS and JavaScript to meet specific client needs beyond what off-the-shelf options offered.
PHP
Laravel
Yii
WordPress
JavaScript
Express.js
Python
Django
MySQL
MongoDB
Redis
HTML
CSS