- More than 8 years’ experience in the IT industry as a full stack software developer.
- Strong experience in setting up a full CI/CD devops pipeline in Visual Studio Team Services (now Azure DevOps) with a hybrid configuration, where we have a deployment pipeline both on Microsoft Azure and on-premise.
- Strong experience in Microsoft Azure.
- Strong experience in container and orchestration technologies like Docker and Kubernetes.
- Strong experience in being a solution architect the most recent being a full migration to the latest and greatest of .NET and web technologies. I am the one who designed and architected the containerize and microservice based architecture of a data capture and data transactional system applying the architectural principles of domain driven design and command query responsibility segregation (CQRS), using event bus technologies like RabbitMQ, Azure Service Bus, and Apache Kafka for data synchronization and eventual consistency.
- Strong experience in designing real time and robust systems for the Finance, and Real State industries.
- Developed, configured and deployed a variety of .NET Framework Applications including Web API and WCF Web Services, ASP.NET Web Forms, ASP.NET and ASP.NET Core MVC, containerized .NET and .NET Core applications.
- Strong experience on working with reporting tools like DevExpress Report Server and SQL Server Reporting Services.
- Strong database development experience primarily using Microsoft SQL (MSSQL) Server (T-SQL), with some experience in IBM DB2 and Firebird, and hybrid cloud, on-premise integration tools like Azure Data Factory
- Hands on experience with NoSQL storage technologies primarily Elasticsearch and Azure Cosmos Db.
- Hands on experience with analytics tools like Elastic Stack (w/ Kibana), SQL Server Analysis Services, and Power BI.
- Strong experience in all phase of software design life cycle management and implementation.
.NET Framework Technologies: .NET Framework 3.x, 4.x, .NET Core 1.x, 2.x, ASP.NET Web Forms, ASP.NET Web API, ASP.NET and ASP.NET Core MVC, Windows Forms, WCF Services
Environment: Visual Studio 2010, 2012, 2013, 2015, 2017, 2019, Visual Studio Code
Cloud Technologies: Microsoft Azure
Relational Databases: SQL Server 2008, 2012, 2014, 2016, 2019, IBM DB2, Firebird, Postgres
NoSQL Databases: Elasticsearch, Azure Cosmos DB, DynamoDB
Analytics & Reporting Tools: SQL Server Analysis Services, Elastic Stack (w/ Kibana), Power BI, DevExpress Report Server and SQL Server Reporting Services
Containers/Orchestration: Docker, Docker services, Kubernetes
3rd party Tools: DevExpress (WinForms), DevExtreme Angular, Telerik, KendoUI, Wijmo, Ag-Grid, Redgate SQL Change Automation
Senior Software Developer
Environment: .NET Core 3.x, Dapper, ASP.NET Core Web API, Blazor, Github, PowerShell, Docker, MesosSphere DC/OS. Swashbuckle. Bamboo, JIRA, ReSharper, SQL Server 2016, SQL Server 2019, Visual Studio 2019, Visual Studio Code, PdfCompare
- Design, develop, and on-board new microservices for the MARS platform (Using ASP.NET Core 3.1 on the Web API Microservices, SQL Server 2016 for the Backend Database, Swashbuckle using Swagger for API Documentation)
- Containerize 14 ASP.NET Core 3.1 Microservices, integrate GitHub repo with bamboo builds and implement scripts for customizing the bamboo deployment pipelines for these microservices.
- Build the MARS Regression Tool that streamlines the process of doing regression testing across different types of reports, features include batch JSON and PDF Comparison
- Create the MARS AutoDeploy Tool that facilitates batch deployment of microservices from one environment to another.
Confidential, Jersey City, NJ
Senior Software Developer
Environment: .NET Framework 4.7.2, .NET Core 2.x, Entity Framework 6.x, Entity Framework Core, DynamoDB, DynamoDB Geo, Postgres, Xamarin iOS, Xamarin Android, Visual Studio 2017, Visual Studio 2019, Visual Studio Code, Amazon Web Services (AWS), Bitbucket, Git, HockeyApp, Bamboo, JIRA
- Enhance and maintain the iOS Maps feature for searching property locations on the map.
- Design and develop the annotation clustering on the maps feature for properly clustering property location annotations on the map when zooming in and out and panning to prevent inconsistencies.
- Refactor the backend ASP.NET Core 2.1 web API.
- Build the aerial measurement on the map feature.
- Implement the mobile front end Xamarin iOS data validations.
Senior Software Developer
- Rewrite the whole data capture module to use Angular 6.x and use Visual Studio Code as the main IDE for front end web development.
- Took the role of solutions architect for the project migration to the latest .NET (.NET Core 2.x), web (Angular v7.x using Ag-Grid as a third-party grid control) and container (Docker and Kubernetes) technologies.
- Design and develop the whole project structure of the new architecture using Domain Driven Design principles, microservice, CQRS, and containers using Entity Framework Core 2.x as the main ORM and SQL Server 2019 (cross platform) as the backend data store for the command (transactional) stack and Elasticsearch as the NoSQL data store for the query (read) stack.
- Write the event bus abstractions and the concrete implementation for RabbitMQ, Azure Service Bus, and Apache Kafka, where RabbitMQ and Azure Service Bus are mainly used as the event bus for test and profiling while Apache Kafka is for production.
- Setup the container and orchestration development workflow for Visual Studio 2017 using Docker container technology, and docker-compose for orchestration support.
- Create the teams own microservice project templates in Visual Studio both for the command stack and query stack microservices.
- Implement the unit and integration test structure for the architecture migration using XUnit.
- Write the Angular 6.x unit and integration tests using Jasmine and the Karma test runner.
- Implement Angular 6.x unit test automation and setup integration with TeamCity using Jasmine and the Karma test runner and a headless browser plugin for TeamCity.
- Work closely with DevOps team to facilitate the Octopus deployment for both the backend microservice based application and the Angular 6.x client application.
- Facilitate brown bag sessions that happens twice a month for knowledge sharing and continuous learning.