PropertyGuruGroup | July 2022 - Present
Founder, Chief Executive Officer
PT. Bisnisin Teknologi Asia | June 2022 - Present
Principal Software Engineer
Moove Africa | February 2022 - June 2022
Being a Champion for Engineering excellence and Architecture at Moove (formerly known as MooveAfrica) which essentially hold the responsibility of guiding the teams and foster a culture of engineering and architectural excellence. My day-to-day activities would be around business and technical discussion with all business and technical stakeholders, while also being involved within the product design and engineering hands-on (software development) activities. Last time during my "short-time" with Moove, I was leading a team from Poland and worked on the Moove Driver's app. This particular app has several integration with different Moove's partner such as Uber, etc with their various data format that need to be adjusted and standardized in order to work seamlessly with Moove's internal data structure. This is where I came up with my own design idea for building a streaming data pipeline to cater that purpose. I was presenting my IPR (Interested Parties Review) and ADR (Architecture Decision Record) on how to build this particular streaming data pipeline from scratch to the management (from designing the database structure and anti-corruption layer based on the serverless architecture, including the data API layer). I managed to convince them to go with my design. Subsequently, I was leading and worked with few engineers from Poland to build this particular streaming data pipeline and successfully secured our first release before I took a decision in leaving the company for some personal reasons.
Lead Solutions Architect
Lulu International Exchange | October 2020 - February 2022
Key Achievements: - Managed to convince the engineering and business stakeholders to adopt my suggested new technology recommendations, ideas, and approaches through the implementation of event-sourcing microservices architecture while design and develop YO2 from scratch as the primary candidate to replace one of their legacy system namely YOM - Liaised with product managers to identify MVP requirements and clearly defined feature sets into well-scoped user stories in the format of VTFM to ensure its alignment with business vision. I also introduced the team about event-storming for our requirement gathering phase, including on how to apply Scrum within the project - Designed and develop a basic framework for our custom event-sourcing system using Java 11, Spring, Kafka (command bus and event bus), and PostgreSQL as both event-sourced and projection databases. - Gave some trainings to the engineering team on how to use my created event-sourcing backend framework and also other topics on Java and development best practices such as TDD and IaC - Introduced "Threat modeling and analysis" to the team as part of the security development best practices - Collaborate with the engineering department and DevSecOps - Learn the characteristics of the region and industry in which its located, provide universal demand input for products and solutions - Designed and developed an LCM engine with Apache Camel and Java 11. It is an enterprise adapter that connect various enterprise applications. This particular engine also become our main workflow engine that has different business workflow based on various parameters like products and services offered by the Company - Designed and developed BRMS system using Drools and Java 11 in conjunction with the aforementioned LCM - Proposed and lead the implementation of our tailored TOGAF where I was introducing various architecture document templates like RFC, ADR, and Architecture Vision as part of my initiative for agile architecture
Senior Software Engineer
JANIO | October 2019 - December 2020
JANIO is a Logistic & Supply Chain Company which is also being considered as a Technology Company that provides seamless end-to-end cross border eCommerce logistics solutions to eCommerce businesses Following were my achievements during my time with JANIO: - Been trusted to design and develop all backend API services alone from scratch for one of JANIO's product namely HMS (Hub Management System). HMS provides high-performing, mobile friendly technology that easily and inexpensively enables warehouse-like execution in all nodes, no matter how small or complex the facility. Additionally, Our HMS also looks at the Inbound and Outbound process of Shipment, Cargo, and/or Package through a Central Hub Control which known as Hub Control Tower System - Managed to secure the first production release of HMS MVP features within just 1 month - First production release is proven to increase the efficiency of package shipment time and custom clearance processes by getting rid of any manual sorting process which initially happened at JANIO's Hub for Singapore - Managed to secure around 7 production releases in the subsequent development cycles that are proven to help and improve all operations in all deployed hubs (Singapore, Indonesia, Malaysia, Taiwan, Philippines, Thailand, and HongKong). Essentially HMS was proven to maximize the process efficiency that eventually can maximize JANIO profits by identifying any operational inefficiencies, preventing revenue leakage (through detecting earlier any damage on the shipment package), reducing handling errors, avoiding business SLA failures, etc - Took an engineering initiative to design and build an internal audit trail system (heavily based on event-sourcing) for HMS. The audit trail system that I built alone is proven to help me and highly possible the any engineering team to easily detect and find the root-cause of a failure that might occurred. This audit trail also helps business stakeholders to learn from our user behaviors
G2 Academy | August 2018 - May 2020
As a part-time instructor I was teaching various topics which mostly on the backend architecture and software development best practices for some private and government sectors. I was helping G2 to build the curriculum structure (syllabus) including the course materials for Java, Golang, and NodeJS courses since I joined G2 when I was the only backend instructor during that time. So basically I helped G2 in setting up their courses and classes. In between February 2020 and May 2020, i was also trusted as an exclusive Technical Architect to help G2 internal engineering team on one of their Banking project in BRI (Bank Rakyat Indonesia). I designed the basic scaffolding code in compliance with the `clean-code architecture`, and taught the team on how to work with that sort of `clean-code architecture` while also applying Gherkin syntax in our test cases to ensure its alignment with their business user stories.
VP of Engineering, Co-Founder
Automate | January 2018 - December 2019
Automate.id is an AI based startup company which focuses on building an AI-platform to automate day-to-day transactions for various business domains. I was one of the Technical Co-Founder whom designed and built the platform from scratch since the beginning of 2018, and also acted as the VP of Software Engineering. Some of my key achievements during my time with Automate.id were as follow: - I took an initiative to proposed and designed an e-commerce chat bots platform as one of Automate.id primary product by utilizing different preexisting chat platforms such as : WhatsApp, Telegram, Facebook Messenger, and Line through building backend chat adapters for those chat platforms by myself alone (This was my initiative and I was the only engineer work on the chat bot product during that time) - I had also designed and built a workflow engine (myself alone) from scratch based on FSM (Finite State Machine) to support different business domains outside eCommerce. My expectation during that time was to provide the ability for our chat bot to seamlessly work with different business domain (e.g., logistics, ticketing/travel agent, etc). In a nutshell, this particular workflow engine contains different workflow steps to drive user workflow based on its domain (e.g., eCommerce has some steps such as searching a product, adding product into cart, checkout from cart, payment, and product shipment). Furthermore, this particular workflow engine can also be freely customized by our customers according to their needs. - My chat bot was also strengthened by an NLP engine that can grab the user's intent to drive the conversation into the appropriate workflow in my workflow engine.
Senior Java Engineer
Blibli | September 2013 - April 2015
Worked with various Java EE technologies such as : EJB, Spring, Hibernate, etc. At the first time joined the Company, I was being assigned to help one project called VENICE.VENICE is an Order Management system for storefront and other modules in blibli.com. Initially, VENICE was developed by a third party, but afterward I proposed to the technical stakeholders to refactor all of the VENICE's legacy code. I was also proposing to apply TDD method to the IT stakeholders as a standard in our software development, and they trusted me to lead and conduct a training about this particular methodology. Subsequently, in parallel with VENICE I was also trusted to help the refactoring process for one module called MTA. MTA stands for Merchant Tool Application. As the name implies, it is a module that is dedicated to help Merchant in managing their product. I also used TDD approach on this refactoring process and taught the team on how to safely refactor any of their legacy code through the utilization of Unit Test as one of our main metric for a good code. My last project before I left the Blibli was a project called "Project-X", which particularly I was working on the scheduler engine module. For this project, I managed to created a custom workflow scheduler engine which enhance our legacy scheduler that initially was built on top of UNIX Cron.
Senior Java Programmer
Hewlett-Packard | August 2012 - August 2013
Work on an e-Commerce Platform and middleware called NCIS (formerly known as VIPER). NCIS is the order management platform for HP. My responsibilities covered both backend and frontend engineering. I was also responsible to maintain some core business logic which is written as Oracle stored procedures and functions.
PT. Visi Solusi Teknologi | December 2011 - August 2012
Worked as one of the Java developer in a SCRUM developers team for one project named "EAI Enhancement" at TELKOMSEL (i.e. one of the biggest GSM carrier in Indonesia). This project was initiated due to some weakness we found in our former EAI platform. Therefore, EAI Enhancement was being developed in order to solve some of the issues in previous EAI, such as: Stuck Thread, bottleneck, Out of Memory, etc. As you've might already known, EAI is an integration framework composed of a collection of technologies and services (commonly related with SOA) which form a middleware to enable integration of systems and applications across the enterprise. I was working on these following technologies: Java, Oracle WLI 8.1, Oracle WLI.10.3, Oracle Service Bus, ALDSP, EJB 2.1, EJB 3, Apache Camel, JMS, JMX, XQuery, XLST, XML, SOA/SOAP.
Java EE Developer
Hub9 | September 2011 - January 2012
Builded an interface application (service/daemon application) to be integrated with Facebook's XMPP Protocol and Yahoo!'s propietary protocol. The application is equipped with SMS gateway, so the main purpose of this application is to give a cross chat SMS services between facebook and yahoo users. I was the one that designed and built all of the backend services from scratch, including its deployment pipeline and how to expose our services in the form of API and SDK to some external third parties.
Universitas Dian Nuswantoro
Information Technology, B.Tech | June 2000 - June 2006