I'm a full-stack web developer with a combination of multi-disciplinary skills and experiences. This skillset allows me to consider the problem at hand from different perspectives to choose and engineer the best solution.
I'm a big fan of the Meteor framework. Having an interesting project or idea? Let's get in touch!
Skills and Experiences
Founded and ran an SaaS business (exited in late 2013).
Look at a problem from various perspectives (user, developer, business stakeholder) to discuss and engineer the best solution. Be aware that sometimes the best solution may be a non-technical one.
Think thoughtfully. Questions I often have in mind when solving a new problem:
- "Is this a real, valid problem? Can we improve our business modal/processes/operations so that this kind of problem doesn't exist in the first place?"
- "Should I solve this as a stand-alone issue, or is it part of a larger problem?"
- "Besides solving the problem, is there anything I can do in this part of the codebase to pave a better road for future development work?"
Pay attention to and be aware of the importance of small details, in everything, be it conversation, feature description or code.
Be proactive and resourceful. I can work without supervision and need very little instruction to get things done, the right way. I can talk with the customers, realize what they really want to say but don't know how, identify the main pain points, and provide the best solution suite including business processes, technologies, UI, UX and coding.
(Really) listen to others. Not only understand what they want to say, but also try to be aware of their thought process, motivation, emotional state, potential bias,... and combine these insights to have better collaborations.
Write code that is beautiful, elegant, well-structured and reusable.
Build applications that are not only functional but also beautiful, delightful and easy to use.
My background & tech stack
I have been working with Meteor extensively for more than one year (since version 0.6.5).
I worked at Useful IO LLC, a San Francisco-based development shop, and contributed to several Meteor projects.
Currently I'm a Meteor developer at Cinarra, a technology startup that aims to disrupt the economics of the mobile industry by redefining the role of the network operators and over-the-top platforms.
Technologies I have experience with:
- Used in the past: Java, Python, Ruby
- Interests and curiosity: C, Lisp, Swift
Tools: jQuery, Underscore.js, D3.js, Moment.js, Fabric.js, Bootstrap 3, LESS
- Test Driven Development:
- Test runner: Velocity
- Unit and Integration tests: Jasmine
- End-to-end tests: Cucumber (with WebDriver for browser automation)
Design Language: Google Material Design
Database: MongoDB (familiar), MySQL (basic exposure)
APIs: Saasu, Braintree, Facebook, Google Maps
Projects I've Worked On
2014 March - 2014 June
Special order anything from Japan
Architected and implemented the order management process, including:
- Order creation, modification & cancellation
- Payment processing (using the Braintree API)
- Collaboration flow and tool for customers and staffs
- Demonstration: http://www.screencast.com/t/NfwbJyPHKza
Implemented the packages life cycle management process, including:
- Management of packages moving in and out of warehouse
- Consolidation of small packages into a single package
- Package shipping
Architected and implemented an API for easy interaction with the Saasu online accounting platform (https://github.com/usefulio/meteor-saasu)
Architected user roles scheme and implemented admin panel for users management
Integrated the MessageFormat package for multilingual support
Made key decisions on UI and UX of various application views
2014 July - 2014 September
SmartTAB ADMIN MODULE
Admin module for SmartTAB
Refactored a large unorganized codebase into a well-structured application
Made key decisions on UI and UX of various application views
Implemented Menu Designer - a gradient responsive grid where owners of restaurants and bars can create,
modify and arrange menu items by drag-n-drop. Each cell's foreground and background colors are automatically
calculated based on the item's relative position within the grid, using an algorithm that makes sure texts
are always easily readable.
Implemented Room Simulator - an interactive pad where business owners can design basic layout of a room.
Built with Fabric.js.
2014 September - 2014 October
Gourmet food trucks now bookable online
Implemented the customer management module
Implemented trucks filtering functionality
2014 December - Present
Disrupting the economics
of the mobile industry
Introduce TDD to the project and build comprehensive test coverage for both front-end and back-end
Meteor URL Shortener
A weekend hobby project I did in early 2014. Features:
URLs management: Registered users can manage their previously-created URLs and mark URLs as private
Secured pub/sub pattern to protect private URLs
Sever-side routing for faster URL redirection. If the requested URL is private, the app will switch to client-side for user authentication
URL schema for data integrity (using the awesome aldeed:collection2 package)
Real-time statistical tracking including number of visits by browser, OS and country
UI & UX inspired by the awesome Material Design guideline from Google
2013 January - 2013 October
Online Backup & Sync Service
Targeting Vietnam Market
IMABOX is a company I founded in early 2013. The company aimed to provide an affordable backup and sync service
for Vietnamese internet users, with the following features:
- Fully localized User Interface
- Technical support in local language
- Offline payment options for people not having access to an online payment tool
- Reasonable price compared to Vietnam's living standard
We obtained a reseller license from Livedrive Internet Ltd, a UK cloud storage company.
- My roles:
- Assembled and managed a team of students from multiple disciplines
- Developed a website and integrated it with the Livedrive API
- Planned customer acquisition and marketing strategies
- Designed the customer support process and trained the support team
- Financial planning
CEO @ Useful IO LLC
I recommend Phuc 100% to anyone serious about delivering epic user experiences. You know that finding a developer who understands
human behavior, implements best practices, writes solid code and communicates effectively is nearly impossible. Phuc Nguyen is this kind of developer,
a great person and a pleasure to work with:
- Phuc was implementing some of the most sophisticated UIs and functionalities we've ever developed within the first month of hiring him.
- He is equally successful when given very detailed specs, and when given broad flexibility to design a best-in-class UX himself.
- His feedback to the team is always thoughtful, insightful and from the heart.
- Attention to detail can make or break an application, and Phuc has his eye on the details all the time.
- Communication across multiple timezones is never a problem.
Writings & Open-source projects
More about me
Open-source projects & contributions:
- Meteor URL Shortener: github.com/npvn/meteor-url-shortener | shorten.meteor.com
- Material Design for Meteor: github.com/npvn/meteor-material-design | material.meteor.com
- Bootstrap Material Design
- Meteor Saasu API: github.com/usefulio/meteor-saasu
I occasionally write about Meteor at phucnguyen.info/blog.
I'm very open to new opportunities. Having an interesting project or idea? Let's get in touch: