MH.
HomeCareerProjects

©2024 Mike's Portfolio v3.0.0

Built with React, TypeScript, Next.js, and Mike's Love

Back to Projects

Supply Chain Management Mobile App

Software Engineer @PALO IT Hong Kong Limited

✅ Increased delivery velocity by 2x while refactoring existing code with best practices

✅ Reduced pull request turnaround by 50%

What is this project about?

This was an interesting opportunity to test the impact I can have on a team that is facing tight deadlines and high expectations from stakeholders.

There were 2 weeks left until the deadline of the project, and due to the frequent changes in the requirements and delays in management decisions, the team was significantly behind schedule. I was brought in to help the team catch up and deliver the project on time.

I had been working on Gen-e2 methodology and AI-powered development process for a while, so I discussed with the team to see if this would be a good chance to leverage the powers of AI tools to accelerate our development speed without compromising the quality.

With the team on board, I led the development using mainly GitHub Copilot to assist with feature development, testing, pull request reviews, and documentation. We were able to significantly speed up our development process by 100% while actually eliminating tech debts as well.

Takeaway #1: 🐢 Slow is smooth, smooth is fast!

Sometimes when we are under pressure to deliver quickly, we tend to rush through the development process and end up making mistakes or introducing bugs.

This project taught me the importance of taking a step back, slowing down, and focusing on writing clean, maintainable code.

By doing so, we were able to keep ourselves aligned with the priorities and requirements to ultimately spend the least amount of time to deliver the requirements exactly.

Takeaway #2: 🤖 AI tools are starting to mature nicely!

This project was one of the first few projects where I was able to fully leverage AI tools like GitHub Copilot to assist with development.

One of the most impactful uses of Copilot was during code reviews - it was able to catch potential bugs and suggest improvements that I would have otherwise missed.

I already had a few sets of instructions and prompts specifically catered to catching bad practices and code smells, and having the teammates use these before they make their pull requests improved the overall code quality of the pull requests significantly.

Ultimately, we were able to reduce our pull request turnover time from an average of 1 day down to 1 hour.

This might sound a bit too good to be true - I know, I was THE skeptic at our office as well when I first started experimenting with AI tools.

If you are interested, feel free to reach me out and I would be happy to share more about my experiments and learnings!

🛠️Tech Stack

Mobile

React Native
React Native
TypeScript
TypeScript
Redux
Redux
Jest
Jest

Backend

TypeScript
TypeScript
Express.js
Express.js

Data

MySQL
MySQL

Cloud / Infra / SaaS

ACK
ACK
Docker
Docker
GitHub Actions
GitHub Actions

Project Management

Gen-e2
Gen-e2
GitHub Copilot
GitHub Copilot