Granite Bagas · Assistant Lead Software Engineer · Sociolla · Jakarta
I make backend systems lighter, faster and harder to break.
Senior Software Engineer with 7+ years across backend services, web and mobile apps. I focus on memory, latency and how systems behave in production.
Works in
Go, Node.js, PHP/Laravel, MySQL, MongoDB, Docker, React, Vue, React Native
Get in touch
info@granitebps.comBefore → after
Build and deploy time
NOBI
Memory across all backend services
Sociolla
≤400 MB
Worker memory for hundreds of thousands of CSV rows or MongoDB documents
<100 MB
Service memory after the move to Go
<500 ms
Transaction actions on the trade platform
<100 ms
Data retrieval on the same platform
Case files
Each one: the problem in production, what I changed, and the result.
A reusable framework for large CSV imports and exports
Problem
Hundreds of thousands of CSV rows or MongoDB documents had to move through workers capped at 400 MB or less.
Change
Streaming, parts processed one after another, and saved progress that resumes after a crash.
Fits in 400 MB or less
A shared library that loads only what each service needs
Problem
Every service loaded the whole utility library to use a few parts of it.
Change
A modular import structure, adopted company-wide.
Up to 20% less memory
Moving PDF generation off the worker
Problem
PDF generation on a worker kept failing with out-of-memory errors.
Change
Generated in the web app, with layouts as React components.
Fast, reliable PDFs
Serving Indonesia and Vietnam with isolated data
Problem
Services had to handle two markets without mixing product and business data.
Change
Every record tagged with its market, and every query scoped to the request’s market.
Two markets, isolated data
Moving a live trade platform from a Laravel monolith to Go
Problem
A monolith running transactions, real-time crypto pricing and third-party providers.
Change
Co-designed and built the migration to Golang microservices.
Deploys 30 → <10 min
A real-time multiplayer quiz over WebSockets
Problem
Players answering at the same moment needed a fair winner.
Change
A WebSocket backend with live rooms, scoring and reconnect handling.
Ties resolved to the ms
Career
2019 – now
Sociolla
2 yrs 5 mos
Assistant Lead Software Engineer
Jul 2026 – now · 5 mos
Technical design, code review, mentoring three engineers and release coordination across B2B and Planogram.
Show detailsHide details for Assistant Lead Software Engineer
- Support the engineering lead with technical design, code review, sprint planning and releases, and help three engineers get past blockers.
- Turn business requirements for ordering, logistics, sales reporting and retail merchandising into technical designs and tasks.
- Design country-aware configuration across B2B, Planogram and shared services so they can expand into more Southeast Asian markets without changing how Indonesia and Vietnam work.
- Built a reusable CSV import and export framework that handles hundreds of thousands of records on workers with 400 MB of memory or less.
- Investigate production failures and data issues, tune memory-heavy queries and sync flows, and check changes for data isolation, backward compatibility and release dependencies.
- Still write code in Node.js, React Native and Vue, and cover the Arc vendor billing portal as backup.
Software Engineer
Jul 2024 – Jul 2026 · 2 yrs 1 mo
Built the B2B ordering and Planogram retail merchandising platforms across web, mobile, APIs and background workers.
Show detailsHide details for Software Engineer
- Built both platforms in Node.js, React Native and Vue, and covered the Arc vendor billing portal as backup.
- Delivered sales order, promotion, inventory and ERP integration features that needed changes across several microservices.
- Improved the Planogram visual editor, product sync and CSV import and export, and moved CSV export to the frontend after backend memory failures stopped users from getting their files.
- Designed request routing and data separation so Indonesia and Vietnam each keep their own product and business data.
- Made the shared library load per module, adopted company-wide, cutting memory by up to 20% across backend services, and moved PDF generation from a failing worker into the web app.
Adi Data Informatika
7 mos
Fullstack Developer
Jan 2024 – Jul 2024
Maintained three internal BPJS Ketenagakerjaan platforms on Node.js and Vue.js.
Show detailsHide details for Fullstack Developer
- Maintained and improved the knowledge management, learning management and professional certification platforms, on both backend and frontend.
- Prepared releases for DevOps: wrote Dockerfiles, set up environment configs, tested the containers and fixed deployment issues.
- Added SonarQube static analysis to the workflow to make code quality visible.
NOBI
2 yrs
Full Stack Engineer
Jan 2022 – Dec 2023
Developed the core Trade platform and co-designed its move from a Laravel monolith to Golang microservices.
Show detailsHide details for Full Stack Engineer
- Built and maintained the Trade platform: transaction processing and calculations, real-time crypto pricing and third-party provider integrations.
- Co-designed and built the move to Go: deploys from about 30 to under 10 minutes, service memory under 100 MB, transactions under 500 ms and data reads under 100 ms.
- Designed real-time pricing workflows that keep up with frequent market updates without overloading production.
- Reviewed code, shaped architecture decisions, coordinated with other engineers, and onboarded and mentored new hires and interns.
Titik Pintar
1 yr 4 mos
Full Stack Developer
Oct 2020 – Jan 2022
Built the WebSocket backend for a multiplayer quiz and maintained backend services for the learning app.
Show detailsHide details for Full Stack Developer
- Built the multiplayer quiz backend: live rooms for up to 5 players, real-time scoring, room sync, reconnect handling, and ties resolved to the millisecond.
- Maintained the learning app and Account Titik Pintar on Laravel and Node.js: parent-managed student accounts, subscriptions and payments.
- Maintained Sahabat Pintar, the internal platform teachers, designers and animators used to build quizzes and visual content.
- Reviewed code, investigated production issues and coordinated backend changes with the mobile and other teams.
Wamplo Satu Interteknologi
1 yr 5 mos
Junior Software Engineer
Jun 2019 – Oct 2020
Developed Laravel web applications and supported React Native across client projects.
Show detailsHide details for Junior Software Engineer
- Built features, fixed bugs and troubleshot issues in Laravel web apps and React Native apps for clients.
ICON+
4 mos
Internship
Jan 2019 – Apr 2019
Supported AngularJS development and testing.
Show detailsHide details for Internship
- Helped build an AngularJS application, found issues and validated features before release.
Open source
github.com/granitebpsmongoose-log-history
657 downloads last week
A Node.js plugin that records changes to Mongoose documents, for audit histories across MongoDB models.
MCP servers
Let AI assistants search and read public Threads, YouTube and X content, and watch a video to answer questions about it.
Puasa Sunnah
A calendar of voluntary fasting days in Indonesia, with a public API built with Go and Fiber.