Experienced Software Engineer with 15+ years in the industry, specializing in developing scalable software solutions and leading cross-functional teams. Demonstrated expertise in software architecture, team leadership, and problem-solving. Committed to leveraging communication skills to build relationships and drive team success. Eager to contribute to continuous improvement and innovation in a dynamic environment.
Overview
16
16
years of professional experience
Work History
Senior Software Consultant
ThoughtWorks
, VIC
11.2024 - Current
As part of a multidisciplinary team, I worked on delivering quality software following TDD, DDD, SOLID, OOP, and CI/CD for various clients using technologies like ASP.NET Core, C#, JavaScript, TypeScript, SQL Server, Microsoft Azure, Azure, DevOps, Git, GitHub, Docker, Kubernetes, and TeamCity.
Created detailed technical documentation for all projects completed.
Performed unit testing of applications prior to deployment in production environment.
Conducted code reviews to ensure high quality standards were met.
Deployed new releases of software applications onto staging/prod environment.
Investigated root cause of application bugs reported by users or testers.
Tackled development tasks based on system requirements and documented approaches.
Joined the development team on Dominos project integrating new features to enhance operational cost efficiency
Worked as part of Xero payments team to deliver new feature to clients targeting specific regions to enhance user journey
Senior .NET Developer & Tech Lead
AKQA
Sydney, Australia
10.2018 - 02.2024
Worked with cross-functional teams worldwide on projects in various sectors, including universities, storage solutions, electrical/automation, Tyre, Finance, Government, Health, Food sectors, etc.
Customized software solutions to fit client needs and budgets, using tools like Sitecore, ASP.NET/ASP.NET Core MVC/Web API, Solr, SQL, Unit tests, Azure Compute/Function Apps, Kubernetes, Docker, Javascript frameworks/Libraries (JQuery, Angular, Knockout, React, Knockoutjs), and more.
Used Azure DevOps and other technologies for project deployment in different environments.
Conducted code reviews to ensure high-quality code that adhered to coding standards were produced.
Provided technical guidance on development projects as well as implementation of new technologies.
Assisted in the design and development of application architecture components.
Developed and maintained technical documentation for software systems.
Collaborated with other team members to troubleshoot complex issues and develop solutions.
Evaluated existing applications for defects or improvements in functionality or performance.
Performed root cause analysis for production incidents and identified permanent fixes.
Mentored junior developers on coding best practices and standards.
Created detailed project plans with timelines, deliverables, and resources needed.
Facilitated communication between different teams to ensure the successful completion of projects.
Analyzed customer requirements to determine appropriate technology solutions.
Coordinated with vendors for the resolution of any third-party product-related issues.
Analyzed user needs and software requirements to determine design feasibility.
Wrote user manuals and other documentation for roll-out in customer training sessions.
Senior .NET Developer, Full Stack
Mahan Air
Tehran, Iran
12.2014 - 09.2018
Collaborated with various cross-functional Agile teams to gather, analyze, design, and implement software requirements to enhance performance and streamline the company's operations.
Designed and implemented a service using Hangfire to automate data crawling. This involved making parallel API calls to an online booking system and storing the retrieved data in a NoSQL database (CouchDB). The system automatically validated the data and generated reports, highlighting any errors or inconsistencies. Custom reports were generated and stored in SQL Server for an external accounting web application. This new component replaced an existing third-party application and improved performance by over 88%.
Designed and implemented a service using C# and T-SQL that generates custom messages based on information gathered from various applications. This service feeds data into a legacy system, significantly reducing the time previously spent on exporting data from multiple applications and importing it into the legacy system.
Collaborated in the design and implementation of a responsive booking application for searching and booking flight tickets online. A serverless SPA implemented using C#, ASP.NET Web API, AngularJS, SOAP web services, XML, and XSLT.
Designed and implemented a utility application to package and export a project created using a third-party form generator system, along with its database schema, system, and user-defined data to an XML file or a destination database of choice, improving the precision and performance of the process along the way.
Developed a utility app in C# to facilitate bulk import of custom Excel/CSV data files into SQL. Streamlined the import process by defining columns in a configuration file and generating entities for each dataset. Accelerated the transition of legacy Excel reports to new systems.
Researched, designed, and implemented a utility .NET service to retrieve all time zone and airport information from a configurable source. This service generates a T-SQL script that can be executed on a destination database in SQL Server. By replacing the existing, time-consuming, and error-prone approach, this utility application improved performance by 99%.
Peer review in TFS.
Technical interview of software developer role applicants.
Mentoring junior developers.
Senior .NET Developer
Tejarat Gostar Fakhim
Tehran, Iran
12.2013 - 12.2014
Worked in an Agile team to design and implement an enterprise procurement management system tailored for the petrochemical industry. This is a single-page application (SPA) developed using ASP.Net 4.5 Web Forms, C#, JavaScript, jQuery, CSS, HTML, and Telerik UI components.
Implemented various reusable components, including a state-aware hierarchical workflow engine for dynamic loading of actions on each application form, depending on user permissions and the status of each entity. The Comment Management Component dynamically provides the ability to insert optional or required comments for each entity in the application. Generic Tree Container Component manages retrieval, display, loading, and persistence of entities with a hierarchical structure, with filtering on numeric, string, and date-time types. Generic grid container component that manages retrieval, display, load, and persistence of entities. It dynamically loads the associated user controls for CRUD operations and supports filtering on numeric, string, and datetime types.
Performed code reviews and enforced software development best practices.
Designed database schemas according to project specifications for efficient data storage solution.
Technical Interview of software developer role applicants.
Evaluated customer feedbacks and implemented necessary improvements accordingly.
Provided technical guidance and mentorship to junior team members during development process.
Software Developer (Contract)
Farab Co.
Tehran, Iran
07.2013 - 12.2013
As a software developer, I work in an agile team on FTS (Farab Total Solution), which is an MVC SPA. It includes modules like warehouse, financial and accounting, procurement, human resource, project management, etc.
Preparing design and architecture for different modules of the application.
Review, analyze, and plan the technical implementation as per the project requirements.
Development and maintenance of software solutions using technologies like C#, JavaScript, jQuery, ASP.NET MVC, Entity Framework Code First, and SQL Server.
Writing unit tests and integration tests.
Peer code review in Team Foundation Server.
Interact with clients and gather technical requirements.
Performance tuning and optimization of application and database.
Automating server configuration and deployment of software applications on a server.
Software Developer
Optimized System Development
Tehran, Iran
07.2010 - 12.2013
Collaborate in an Agile team on a Procurement project for Petrochemical Companies, which is a SPA implemented by C#, ASP.NET Web forms, Entity Framework Code-First, JavaScript (JQuery), SQL SERVER, and IoC (Unity).
Implemented core features like a role-based security system, state machine, business logic cores, provider-based exception handling and logging, notification manager, scheduling engine, subscription provider, and mail helper.
Developed various modules such as User management, Basic information management, Enquiry system, Request management, Payment Management, and Resources management.
Provided technical support for users of the software system.
Collaborated with team members to ensure successful project completion.
Assisted with planning, designing, coding, debugging, testing, documenting, and maintaining software applications.
Worked closely with business stakeholders to understand requirements and design solutions that meet their needs.
Participated in sprints planning sessions with Agile methodology.
QA & Junior Software Developer
Douran Software Technologies
Tehran, Iran
02.2009 - 07.2010
Started as a QA, also in charge of the documentation, release, and installation of packages on the clients' side. Later on, I joined the development team as a Junior Software Developer collaborating on Douran Portal, a Web Application implemented using technologies like ASP.NET WebForms, C#, SQL Server, CSS, HTML, JavaScript, and jQuery.