Saya membangun sistem yang memindahkan data industri: front-end processor OPC UA dan IEC 104, gateway notifikasi, pipeline Kafka, dan dashboard di atasnya.
Saat ini Software Engineer di PLN Icon Plus (kontrak), mengerjakan layanan platform SCADA. Domisili area Jakarta, terbuka untuk remote.
Beberapa tahun terakhir saya berada di antara dua dunia: teknologi operasional (SCADA, PLC, protokol IEC 60870-5, OPC UA) dan backend modern (Python, Go, Java Spring Boot, Kafka, PostgreSQL, Docker). Pekerjaan saya membuat keduanya berkomunikasi dengan andal.
Di PLN Icon Plus saya membangun dan merawat layanan komunikasi industri: front-end processor OPC UA, layanan smart modem, dan gateway notifikasi SMS digital. Sebelumnya saya mengurus backend HRIS dan QA aplikasi di Mutiara Solusindo.
Saya memilih teknologi membosankan yang bisa dimonitor: binary kecil, protokol jelas, test, dan log yang menjelaskan dirinya sendiri.
Karier
Mei 2024 - Sekarang
Software Engineer
PLN Icon Plus · Kontrak
Mengembangkan sistem komunikasi industri dan layanan backend dengan Python dan Java Spring Boot.
Membangun front-end processor OPC UA, layanan smart modem, dan gateway notifikasi SMS digital yang menjembatani perangkat GSM ke sistem digital.
Membuat tool monitoring jaringan dan simulator OPC UA dengan UI yang dapat dikonfigurasi (JavaScript, React).
Agu 2023 - Apr 2024
Full Stack Developer
Mutiara Solusindo · Kontrak
Merawat dan menguji aplikasi HRIS: database karyawan, pelaporan kepatuhan, dan perbaikan bug.
Repositorinya privat. Angka agregat ini dihitung ulang oleh skrip dari GitHub API; tanggal snapshot ada di bawah.
Snapshot: 2026-09-15
Proyek
Source code publik di GitHub. Ringkasan di sini menjelaskan apa yang benar-benar dilakukan kodenya; tulisan engineering lengkapnya ada di case study.
pocketkafka
Go
Broker event streaming kompatibel Kafka yang ditulis dari nol dengan Go. Protokol wire, koordinasi consumer group, log compaction, tiered storage, schema registry, serta gateway REST dan MQTT semuanya ada dalam satu binary statis tanpa dependency pihak ketiga.
Lapisan presentasi dari pipeline OPC UA ke Kafka ke WebSocket. Menampilkan analitik tegangan, arus, dan daya 3 fasa, panel status digital I/O dan breaker, serta log alarm ambang batas, dengan sumber telemetri WebSocket langsung atau simulator mock bawaan.
Consumer alarm Kafka yang menyebarkan notifikasi ke Telegram dan WhatsApp. Backend FastAPI menangani manajemen pengguna ber-auth JWT, dashboard React mengelola penerima dan preferensi kanal, PostgreSQL menyimpannya, dan jejak audit dikirim kembali ke Kafka.
Layanan FastAPI yang menjembatani topik Kafka ke klien WebSocket dengan routing per topik. Klien yang terhubung berlangganan per topik, ada endpoint HTTP untuk publish balik ke Kafka, dan endpoint health serta metrics untuk memantau layanan.
Simulator server OPC UA berbasis Node-OPCUA untuk menguji klien, sistem SCADA, dan gateway tanpa perangkat fisik. Address space dan perilaku node diatur lewat konfigurasi JSON, nilainya dibangkitkan sebagai sinus, kosinus, dan acak, serta tersedia Docker Compose dan manifest Kubernetes.
Rewrite native Go dari CLI coding agent: tanpa runtime Node atau Bun, ada TUI Bubbletea interaktif plus mode print dan RPC headless, klien LLM multi-provider, eksekusi tool native dengan pembatalan context, dan session tree JSONL.