Mahdi Haji
Lead Software Engineer
Location: Tehran, Iran Phone: - Email:-LinkedIn https://www.linkedin.com/in/abdolvahab
Personal statement
Accomplished software developer with 14+ years of experience in development of web applications.
Excels in every stage of the life cycle of software development, including design creation, coding, debugging, testing, and maintenance.
Expert in devising innovative and tailored solutions to assist businesses achieve their goals in a variety of industries.
Skills & Abilities
Complete mastery on C#, ASP.net Core, MVC, Angular, Javascript, CSS, HTML5, SQL Server
Good experience with ReactJS, VueJS, Elasticsearch, Redis, MongoDB, Microservices Architecture, Kubernetes, Azure Cloud
Work history
Senior Software Engineer and Azure Architect
The Chalet Experience, Ireland (Part-time) March 2020 - Now
Migrating current systems to Azure cloud and utilise appropriate service cost reduction
Developing an Angular app to take guests data by themselves as well as it’s .Net Core API
Provide a rich logging system enhanced by an Angular UI to track data changes
Reducing back-office work by injecting flight data check to application stages seamlessly using RxJS
Enhancing the performance of the website by utilising CDN and lowering dependencies
Create and enhance SQL stored procedures and views
Lead Software Engineer and Architect
ComfyPost Inc., Canada (Part-Time) Oct 2019 - Now
Find and utilise an appropriate portion of technologies to facilitate handling of prospective traffic and required scalability including Redis, Elasticsearch, Kubernetes
Architecting the applications using Microservices and Clean Architecture
Developing Angular Front-end and Asp.net Core back-end
Apply unit testing and load testing using XUnit and JMeter
Enhance SEO by creating server-side rendering and Improve UX using PWA application
Reduce and simplifying test and release process by implementing CI/CD using Azure DevOps
Senior Software Engineer
Qintil Technologies, Britain (Part-Time) May 2018 - Now
Enhancing legacy asp.net MVC application architecture using Repository pattern and develop a standard API using Asp.net Core and Swagger OpenAPI
Implementing automated testing using NUnit
Improving UX by developing a new frontend application using VueJs and Quasar
Optimising current asp.net MVC application as well as adding new features
Reduce and simplifying test and release process by implementing CI/CD using Azure DevOps
Helping the team to new tech stack fluently
Lead Software Engineer
Kaufnah GmbH, Germany (Part-Time) Oct 2018 - Oct 2020
Simplify application architecture and make code more maintainable
Enhance ReactJS front-end structure and make code more uniform and cleaner. Utilise Redux
Reduce and simplifying test and release process by implementing CI/CD using Azure DevOps
Improving maintainability by migrating codes from Asp.net Web API 2 to Asp.net Core
Enhancing database design and indexing that leads to a 30% performance boost
Technical Product Manager and Senior Developer
Digikala, Iran June 2017 - May 2018
Digikala.com is the leading e-commerce company in Iran and biggest in the Middle East; its main website is the second most visiting website and first shopping website of Iran (it owns four shopping sites) with global Alexa rank 35. My achievements there:
Improving caching performance by utilisation of Redis cache
Reducing resource consume on SQL server by implementing SQL memory enhanced tables that leads to a major performance boost
Optimise mobile APIs (implemented by asp.net) that increases its throughput hugely
Optimize performance of the store website in such a way that it had handled 100,000 concurrent users in the promotion days (It had got down with 35,000 users for the last promotion)
Lead Developer and Project Manager
Mofid Edu Complex, Iran (Part-Time) June 2014 - Now
Analysing corporation needs and convert them into use-case and task
Introducing new technologies and best practices to the team to improve its performance as well it’s refreshing it
Architecting the applications using Microservices and Clean architecture
Utilise Redis for Cache and session management, Elasticsearch for logging and monitoring and have them all in a Kubernetes cluster
Develop Angular front-end and Asp.net core back-end for several applications
Junior Developer to Lead Developer
Behsaman Tadbir Inc., Iran May 2007 - June 2017
Lead and manage developers’ team
Analyze corporation needs and find a way to fulfil them
Study and examine new technologies and inject them into the team
Developing applications using several technologies including AngularJS, Asp.net Web Forms, Asp.net MVC, WCF, WPF, JQuery, SQL Server
Improve the architecture of applications and team processes
Transform a start-up company to a market-leading through these years
Education
B.S. of Mechanical Engineering
Polytechnic University of Tehran