Bootstrap s50600822


Personal Info


Standards are always out of date. That’s what makes them standards.

Alan Bennett


Priority Platform ID Note
1 Signal/Whatsapp 0426517192 Quickest way to reach me since it's cross platforms
2 Gmail Not instrusive, I like it. Best one if you have much to convey.
3 Mobile 0426517192 Maybe message me first, I rarely check my phone. And rarer do I pick up on unknown numbers


Time wise


Old engineer ...(cooming soon)..

Old engineer ...(cooming soon)..

2018: Developer Experience Advocate - Aim to empower of JIRA developers. Spiking migration of monolith's Maven reactor to Bazel); maintain and improve tools that facilitates build/run/debug micros services with monolith on local.
JIRA ServiceDesk Fission - Developer Extracting functionality from current container into smaller micros service for dev speed and independent pipelines. Experiment new dev stack write some utility script for local service discovery and service injections in Typescript, new build script in gradle, new webapp with springboot.
2017: JIRA ServiceDesk Vertigo - Developer Refactor code to decoupling and adapt(Plugin lifecycles, Search, Performance), move to serverless/micros services architecture. Add bridging code where necessary to support both monolith and micros services version during the transition. Profiling and fix endpoints that have critical performance impact on new architecture to ensure migrations of big customers and keep the user experience acceptable.
2016: JIRA ServiceDesk Bartender - Developer Experiment and create development toolkit(written in Python) - build, run, deploy scripts for more efficient dev loops. Handling builds and releases for both cloud and server. Automation, scripting whenever possible. Troubleshoot and resolve issues from frontend to OSGi, classpath, application server setup that blocked the release(from IE vs FF vs Chrome issue to Postgres vs MySQL vs Oracle), while at that improving the tooling to deal with these iterations.
2015: JIRA ServiceDesk Scalable Bussiness - Developer Builds and Releases: setup, maintain, improve ci builds, test framework for faster an reliable CI. Performance: setup performance metric, write performance test scripts, setup monitoring dashboards and base-lining performance. Setup translation integration between JSD and and Gengo for i18n crowd-sourcing translations. Migrating Scala 2.10 to 2.11. Migrating Scala code to Java code. Migrating Spring scanner.

Developer JIRA Service Desk - Scalable Business ( see above for timeline working for Atlassian, yes it was still Jira Service Desk, just that the office was in SGN). In this short time, Atlassian decided to close SGN office down. Pretty sure it wasn't me :D

Dedicated Developer for, similar to that of previous role with but at much higher level of SLA as well as more heavily customised platform. Typically the job involve handling customisation and create extension to adopt WB specific business specs, whether it's a UI that present a promotions in certain period, checkout logic and backend processing of stock; payment gateway; auth; email templating and customisation, configurable abandoned cart logic...; or web resources optimisation, SEO, search tuning and troubleshooting (Solr); And be the go-to person that handle Sev-1 which usually required to be resolved in 1-2 business hours, especially in shopping seasons as well as escalation point for complex issues.
Dedicated Developer for Ecommerce platform: Marketlive Handling all kind of request from front end to back end, from web servers to application servers to DB, OS resources issue. Work in Java of the application server to front end javascript, PL/SQL procedure in DB, perl script and cron job on the shared instance. From bugfixing to customization(email integrations with Yesmail, Bronto or customer authorization via openId, implement and tuning abandoned carts, ... ), performance. Tuning JVMs, EHCache, Solr documents scoring. Handling SEO (Google Analytic, Google Adwords, Google Tag Manager...). While each support teams of 5-7 people handling around 20 sites/clients each team may have a dedicated developer - assigned to client who opts for premium package. I was dedicated support engineer of,

ELearning admin Deploy and Customize platform for the use of Computer Science department of HCMUT. Creating tool call OnlineLab integrated into Sakai to allow students submit assignment code and received result from the execution of prepared scripts and test cases(the execution of the submission code need to be in a sandbox env to keep student from trying to do ...'funny stuffs'). At the time Sakai's implementation offer an eco system with almost everything JEE had to offer: Spring, Strut, JSF, Wicket, Portlet, Hibernate, Spring JDBC ... each contributor could pick up a weapon of choice and mix it into the Application context that shared among webapps deployed on the same Tomcat. At this point I did not know Docker so the execution of the script was employ jail concept of unix. The web app worked, however when my QA friend tested with 13 concurrent (scripted) users, the app hung. While the thesis was considered a success by my peers, the professors and the reviewers, to me this was in fact impractical design and short coming I did not foresee. Since then I have a special interests to performance of production for how subtle it is but of utmost importance.