avatar

Hoang Do

Technical Leader / Software Architect

Email
Phone
+84 35 537 4643
Address
Ha Noi, Viet Nam

About Me

- 6 years of experience in web system development using Java, PHP, NodeJS, etc.

- Strong knowledge of Object-Oriented Programming.

- Experienced in system design using Domain-Driven Design and various Design Patterns.

- Skilled in designing microservices architectures with Kong, Kafka, Eureka Service Registry, Camunda workflows (Zeebe), etc.

- Proficient in designing and optimizing RDBMS such as MySQL, PostgreSQL, or NoSQL databases like MongoDB.

- Competent in frontend development using React, Angular, Vue.js, or vanilla JavaScript.

- Strong ability to research and apply new technologies.

- Experienced in training team members and defining product technology strategies as a Technical Leader.

- Skilled in system deep-diving and optimization in the role of Software Architect.


Professional Skills

Technical

- Architect and develop robust web systems using backend technologies such as Java (Spring Boot), PHP (Laravel), and Node.js (NestJS), seamlessly integrated with frontend frameworks like React.js, Angular, or Vue.js.

- Design scalable and fault-tolerant microservices architectures, leveraging modern communication protocols and tools such as message queues (RabbitMQ, ActiveMQ), Kafka, gRPC, and RESTful APIs.

- Engineer high-performance and optimized databases by utilizing SQL-based systems (MySQL, PostgreSQL) and NoSQL solutions (MongoDB, Redis), implementing advanced techniques like indexing, sharding, and partitioning.

- Ensure maintainable and scalable codebases by applying software engineering principles such as SOLID, Clean Code, Design Patterns, and Domain-Driven Design (DDD).

- Improve system performance and scalability through SQL query optimization, Elasticsearch, in-memory caching (Redis, Memcached), and architectural redesign of critical components.

- Implement containerization strategies using Docker and orchestration tools such as Docker Compose and Kubernetes to streamline deployment and scaling.

Researching

Research and introduce emerging technologies to enhance the development team's capabilities and optimize project outcomes.

Analyze and identify system issues, proposing effective solutions to improve stability, performance, and maintainability.

Explore and implement innovative technological solutions to address user pain points and enhance the overall user experience.


Work Experience

Acting Software Architect at TopCV Viet Nam
May 2023 - November 2023
Technical Leader at TopCV Viet Nam
March 2021 - Now
Tech stack:

Java, PHP, NodeJS, ReactJS, Angular, MySQL, MongoDB, Postgres, Kafka, Kafka Connect, Elasticsearch, Docker, K8s, GCP,...

End-to-End Web Developer at Amit Group
September, 2018 - January, 2021
Tech stack:

Java (Spring Boot), PHP (Laravel), Angular, MySQL, Redis, Docker, JWT, ...


Projects

TopCV ERP

- Role: Technical Leader.

- Team size: 10.

Overview:

Developed and maintained an ERP system to streamline sales operations, including features such as product management, KPI tracking, sales, payments, lead management, and customer support.

Tech stack:

PHP (Laravel), Node.js (NestJS), VueJS, MySQL, MongoDB, Kafka, Kafka Connect, Docker, Redis, Elasticsearch,...

Key Responsibilities:

- Collaborated with the product team to gather requirements and analyze business needs.

- Developed core features, codebase samples, and complex modules.

- Conducted research on emerging technologies and integrated them into the product.

- Mentored and trained team members to enhance technical capabilities.

- Conducted code reviews and ensured adherence to quality standards.

TopCV Internal Operating System

- Role: Technical Leader.

- Team size: 10.

Overview:

Developed and maintained internal systems for HRM and Workflow operations, including features such as workflows, department management, and salary tables.

Tech stack:

PHP (Laravel), NodeJS (NestJS), ReactJS, MySQL, MongoDB, Postgres, Kafka, Kafka Connect, Elasticsearch, Docker, K8s, GCP,...

Key Responsibilities:

- Collaborated with the product team to gather requirements and perform product analysis.

- Researched and designed innovative solutions for complex business challenges.

- Developed core system components, including base code, sample modules, and complex features.

- Explored and integrated new technologies to enhance product capabilities.

- Led team training initiatives, fostering skill development and knowledge sharing.

- Conducted code reviews, ensured quality standards, and made decisions on optimization or refactoring when necessary.

- Role: Senior Software Engineer.

- Team size: 6.

Overview:

The system is a recruitment platform for job-seekers, providing key features such as free CV generation, job search, job application submission, and personalized job recommendations. It operates on a structured matching logic that aligns candidate profiles with employer requirements based on predefined criteria, ranking mechanisms, and real-time data updates. AI is utilized as a supplementary tool to enhance recommendation accuracy and automate certain aspects of the matching process.

Tech stack:

Java, PHP (Laravel), NodeJS (NestJS), VueJS, MySQL, Elasticsearch, Docker, K8s, GCP,...

Key Responsibilities:

- Analyze customer and product requirements to design and implement the most optimal and suitable solutions.

- Monitor, detect, troubleshoot, and resolve bugs, errors, and incidents during system operation.

- Optimize the system to improve performance and service efficiency.

- Continuously refine the codebase to enhance quality, reduce development time, and streamline operations.

- Review and merge code from other team members.

- Support team members in improving coding skills and programming mindset.

- Role: Senior Software Engineer.

- Team size: 12.

Overview:

A candidate search and job posting management system for businesses, featuring recruitment campaign management, application notifications, proactive CV search, candidate connection and chat, automated candidate recommendations, job posting and service management, credit management, and more.

Tech stack:

Java, PHP (Laravel), NodeJS (NestJS), VueJS, MySQL, MongoDB, Kafka, Redis, Elasticsearch, Docker, K8s, GCP,...

Key Responsibilities:

- Analyze customer and product requirements to design and implement the most optimal and suitable solutions.

- Monitor, detect, troubleshoot, and resolve bugs, errors, and incidents during system operation.

- Optimize the system to improve performance and service efficiency.

- Continuously refine the codebase to enhance quality, reduce development time, and streamline operations.

- Review and merge code from other team members.

- Support team members in improving coding skills and programming mindset.

- Role: End-to-End Developer.

- Team size: 2.

Overview:

A web application for managing transportation operations, including features such as resource management, route management, booking management, financial tracking, vehicle maintenance management, transaction management, pick-up and drop-off management, and shuttle services, aimed at optimizing processes and enhancing operational efficiency for transportation companies.

Tech stack:

Java (Spring Boot), PHP (Laravel), Angular, MySQL, Redis, Docker, JWT, ...

Key Responsibilities:

- Gathered and analyzed customer requirements to fully understand the project's goals, needs, and challenges, ensuring accurate implementation.

- Proposed optimized solutions for resource allocation and cost management, helping reduce operational costs while enhancing system performance.

- Designed the system architecture, database structure, and user interface, ensuring scalability, security, and high usability.

- Implemented both the backend and frontend, developed APIs for interaction with the mobile app, ensuring smooth data synchronization and integration.

- Conducted product testing (QA) prior to handover, ensuring the product's stability and quality.

- Packaged and deployed the product across various environments, including beta and production, ensuring smooth deployment and issue-free transitions.

- Debugged, monitored, and maintained the product post-deployment, ensuring continuous performance optimization and timely updates based on customer needs.

Pan-United's E-Caf

- Role: End-to-End Developer.

- Team size: 7.

Overview:

The Pan-United investment organization from Singapore requires a loan/investment request management system with a multi-layer approval mechanism, a flexible and easily updatable workflow. The system should be built using a microservices architecture with Java and MSSQL, ensuring performance and security compliance.

Tech stack:

Java (Spring Boot), Angular, MSSQL, Redis, Elasticsearch, Camunda Zeebe, Docker, JWT, ...

Key Responsibilities:

- Proposed optimized solutions for resource allocation and cost management, helping reduce operational costs while enhancing system performance.

- Designed the system architecture, database structure, and user interface, ensuring scalability, security, and high usability.

- Implemented backend systems, developed APIs for interaction with the mobile app, ensuring smooth data synchronization and integration.

- Conducted product testing (QA) prior to handover, ensuring the product's stability and quality.

- Packaged and deployed the product across various environments, including beta and qc, ensuring smooth deployment and issue-free transitions.

- Debugged, monitored, and maintained the product post-deployment, ensuring continuous performance optimization and timely updates based on customer needs.

- Write system design documentation and be responsible for handing over the complete product design to the client's technical team.


Contact

Address

Ha Noi, Viet Nam

Phone

+84 35 537 4643

Email

https://www.facebook.com/hoangdo.2194
https://www.instagram.com/hoangdo.2194
https://github.com/aaaahoang123