Java Software Engineer
AVAN Software Technology Advisors (ASTA) — Dec 2023 – Present · Remote · Tehran, Iran
I played a pivotal role in enhancing the Flickit open-source project by developing robust APIs and implementing best practices.
- Enhanced the Flickit open-source project with robust, scalable APIs using Java 17 and Spring Boot.
- Built 8+ RESTful microservices following hexagonal architecture, improving modularity and testability.
- Integrated MinIO and PostgreSQL for efficient and scalable data storage solutions.
- Championed Test-Driven Development (TDD), fostering clean, maintainable codebase across 10k+ LOC.
- Created and deployed a Python-based Backend-for-Frontend (BFF) layer for seamless frontend integration.
- Developed 10+ AI-driven prompts using Spring AI to automate and enhance data assessment workflows.
Skills: Java · Spring Boot · Spring Data · Hibernate · PostgreSQL · MinIO · Spring AI · Kubernetes · TDD
Senior Clojure Developer
RDSysCo — Jul 2022 – Dec 2023 · Remote
I successfully contributed to the development of an innovative ERP web application for the oil and gas sector, enhancing operational efficiency.
- Collaborated across teams using Kanban and Domain-Driven Design (DDD) to define clear application boundaries.
- Embraced pair programming to boost code quality and promote continuous knowledge sharing.
- Deployed microservices on AWS, significantly improving application scalability and reliability.
Skills: Clojure · Microservices · Domain-Driven Design (DDD) · AWS · RESTful Web Services · MySQL · TDD · Databases · Algorithms · Public Speaking
Java Developer
Razi University — Jan 2020 – Jun 2022 · Kermanshah Province, Iran
I successfully contributed to the development of a comprehensive user management system that improved authentication processes for key clients.
- Deployed and customized Apereo CAS to enhance secure user access across multiple platforms.
- Built a Spring Boot application to manage users and services, increasing operational efficiency.
- Implemented secure authentication using SAML, CAS, and OAuth 2.0 protocols.
Skills: Java · Spring Boot · Spring Security · Spring MVC · RESTful Web Services · MySQL · MongoDB · NoSQL · Databases · Algorithms
Android Developer
SPOT Online Taxi — Sep 2017 – May 2019 · Kermanshah Province, Iran
As part of a mid-size team, I helped develop one of the most successful online taxi apps in Kermanshah, using Java for Android development.
- Developed the Android client to interact with server-side APIs, enabling ride booking and tracking features.
- Implemented wallet transactions to manage user balances within the app.
- Utilized SQLite for local storage of trip and user session data.
- Integrated Google Maps APIs (Geolocation, Geocode, Reverse Geocode) to handle origin/destination selection.
Skills: Android · Java · SQLite · Google Maps API · MySQL · Databases · Algorithms
Android Developer
Islamic Azad University Incubator — Sep 2015 – Jul 2017 · Iran
Collaborating with a small team, we launched two startups: Chili (focused on cooking) and My University (university-focused social media). I was responsible for developing high-performance Android applications in Java and partially contributing to backend development.
- Designed and implemented MySQL databases for backend services.
- Built a two-level caching system using SharedPreferences and SQLite to improve performance and responsiveness.
- Implemented secure authentication using JWT tokens.
- Developed rich social features including messaging, liking, posting, and commenting within the app.
Skills: Android · Java · SQLite · SharedPreferences · MySQL · JWT · Mobile Security · Social App Development