Summary
Overview
Work History
Education
Skills
Timeline
SoftwareEngineer

Yogy Fresta Rahmawan

Software Engineer
Solo

Summary

Skilled software engineer with expertise in system design, development, testing, and application maintenance. Specializes in network programming and distributed systems, including raft, map reduce, consistent hashing, gossip protocol, CRDT, and more. Continuously explores new technologies and their potential applications. Work can be found on GitHub (https://github.com/yogyrahmawan), Stack Overflow (https://stackoverflow.com/users/3928283/yogy-fresta-rahmawan), and Tradingview (https://www.tradingview.com/u/yogy.frestarahmawan/#published-scripts).

Overview

14
14
years of professional experience
4
4
years of post-secondary education

Work History

Career Break

Self Employed
03.2024 - Current
  • Build Retail Business
  • Personal Goal Pursuit(Learn Management/People, Learn Nim And Blockchain, little bit learn Machine learning)

Software Engineer

Turing
01.2024 - Current

Turing is remote work platform similar with toptal. I managed to pass turing test

Software Engineer II

Connected Freight Pte, Ltd (Bankrupt/Shut Down)
11.2022 - 02.2024

In my role as a Software Engineer II at Connected Freight, I worked on multiple squads including Shell Accuport and TMS + OMS under different agencies. In the end, the company was shut down/bankrupt

Shell Accuport is all-in-one digital solution for better marine products procurement.
• Enhanced order suggestions
• Refactored code for better performance and maintenance
• Developed new features like multi-port news flash and non meo order suggestions
• Enhanced observability for our cloud functions by utilizing datadog

Technology Stack: gcp, kubernetes, cloud function, vpc network, golang, python, datadog

TMS and OMS is doing route optimization and order management system. In this squad, i mainly working as platform engineer.
• Improved error handling and making error more understandable to users.
• Developed new features like submit good received note for tms and in app notification for oms platforms.
• Enhanced oms status to handle compteted status and missing fields during export order
• Fixed several defect on tms platofrms such as: handle presignup error and set cloudfront cors

Technology Stack: serverless, typescript, aws

Senior Software Engineer

Rakuten Travel XChange
04.2019 - 10.2022

Rakuten Travel Xchange is the accommodation wholesale and travel technology division within the Rakuten group.

• Responsible for backend design, coding, maintenance, and deployment at Rakuten Travel Xchange.
• Integrated several hotel provider such as rakuten v5, travelgatex, hotelscombined, convergent and agoda. This integration make our clients has several options to book hotel across the world and increase our company revenue.
• Make our system more documented so new joiner can easily on boarded to our systems
• Reduce error rate in our side by implementing internal rate limiting for each credentials before request go to external providers.
• Implemented Thundering herd prevention using go singleflight for Rakuten supplier.
• Utilized Kong key management for endpoint blocking/unblocking and rate limiting based on API key. This way we can prioritize our customers.
• Reduce query latency by implementing table partition for rakuten supplier
• Enhance our language to support chinese translation by utilizing pg_trgrm
• Reduce scheduler load time in rakuten supplier by utilizing chuckoo filter
• Enhance internal system by make audit log so our support can easily identify what kind of error in our system.
• Conducted load tests, profiling, and optimizations to reduce latency and memory usage.

Tech Stack : Go, gcp, grpc, postgresql, redis, bigquery, docker, kubernetes, google pubsub, bigtable, prometheus, grafana, scylladb, rabbitmq

Backend Engineer

Avnos.io
08.2018 - 04.2019

In my role as a Backend Engineer at Avnos, I led the development of Pulse, Hub, and license server, utilizing technologies like go, consul, cockroachdb, and more. Achievements include optimizing beacon management and server restriction for enhanced performance.

• Implemented Hub for endpoint tasks
• Developed Pulse for beacon management
• Designed license server for on-premise server restriction

Hub Service

Hub is endpoint agnostic and responsible for endpoint related tasks. My responsibilites are:

  • Service discovery using consul
  • Developed pubsub mechanism and server push
  • Developed Authentication and interceptor
  • Developed endpoint allocation, RenewToken, UpdateClientInfo,
    GetClientModule, Ping, Update, And command using grpc bidirectional stream
  • Developed audit trail service using nats and elasticsearch
  • create deployment script using fabfile and
  • Create .deb and .rpm installer using fpm
  • Integrated our service with minio as storage

Stack : grpc, go, cockroachdb, nats.io , elasticsearch, minio, redis


Pulse Service

Pulse is responsible for:

  • Route to nearest active beacon, pulse, and hub
  • Leader election mechanism for beacon
  • Creating token using paseto for authentication


My responsibilities are:

  • create and design architecture for pulse
  • create initial code base
  • create leader election using consul for determine beacon for each cluster
  • create service discovery using consul
  • create api for give endpoint active and nearest hub, pulse and beacon
  • create deployment script
  • create consul reconnect mechanism using exponential backoff
    mechanism
  • Create .deb and .rpm installer using fpm
  • Create gitlab-ci script

Stack: go, consul for leader election and service discovery, cockroachdb, redis, grpc


License Server

License server is used to restrict on premise server. The idea is 1 server 1 license. My responsibilities are:

  • Create and design architecture for license mechanism
  • Create deployment using fabfile



Senior Software Engineer

Decenternet
07.2018 - 08.2018

• Designed and developed a Multi sig Wallet for bitcoin and ethereum using go, memcache, and mysql technologies.
• Utilized bitcore wallet service for bitcoin protocol to enhance security and efficiency.
• Achieved seamless integration of the wallet system, ensuring smooth transactions and user experience.

Tech Stack: go, memcache, mysql

Software Engineer

Freelancer/Self Employed
09.2015 - 08.2018

Develop software: web based, web rtc, network programming. mostly played as backend dev role. I also doing deployment. Accomplished both domestic and international project. Mostly using golang. Project list:

1. Qepon (VOIP application). as backend dev. There are some
components:
Signalling Server: The signalling server acted as manager to initiate
caller and respond callee, stop voip, request public ip to turn so caller and callee can communicating as peer to peer, doing turn refresh so the
allocation alive until caller/callee trigger stop call, keep connection alive to caller and callee by sending heartbeat periodically, manage user
registration using smsgateway.to to sending sms, sending gcm with compressed message using protobuf to callee.
Relay Server : restund for peer to peer communication
Scalling (multiple signaling server, multiple relay server) : multiple
signalling server using cloudflare round robin. For scalling relay, signalling server allocate to different relay based on weighted round robin when caller trigger connection and the gcm message that sent to the callee and the message will include relay address.
Monitoring : signaling server and relay monitoring using http based that
send periodically to server. Server should sent ram, cpu ussage, number
of connection. The monitor app must send email to configured user email when cpu, ram, and number of connection exceed threshold.
Other : added deb package for package builder and fabric script for
deployment
Tech : Golang, fabric, circleCi, goji, persistent connection, gcm, and
mongodb


2. EDC Android based. As Backend Dev.

develop iso_service and acted as middleware between EDC and
AS400. The top layer/api gateway is kong. Features: balance inquiry,
payment, purchase, create account and sign on . It uses iso8583 as
message format to communicating with SOA/AS400 and json message
format from EDC to middleware(iso_service). Built using Golang and
postgres.
protocol : http from edc to middleware. Tcp from middleware to
SOA/AS400 . It is using tcp connection pool to communicate with AS400. The purpose is to reduce delay time.
agent and merchant service : service to handle agent and merchant
registration . built using python and flask framework.
Tech : Golang, python, postgresql, docker


3. Talklikeme(Educational learning platform). WebRTC technology. As
Backend developer.

Realtime communication/push notification and chat using websocket
backed by redis pubsub. Rest API to handle admin task , JWT Auth,
facebook oauth registration, upload image to AWS S3 Bucket.


Tech Stack : Golang, fabric,MongoDB, redis, and websocket for server
push .


4. Lpse scrapper. Lpse auction scrapper. As Backend dev using go and
mongodb


5. Spekdia. Phone listing app using python, django and postgresql.

6. AdsInjector : Initial/POC of detecting certain pattern from video . Tech :
go, ffmpeg, tesseract . Status : Not reach agreement

7. POC of customizing mattermost for polda jabar. Status : not reach
aggreement

8. Damelan . Mini project for scrapping olx.co.id . as backend dev using go
and mongodb.

9. RamlCodegen(rest generator based on RAML) v 0.1 . Initial project of go-raml . initial repository in private gitlab. Built using go.
https://github.com/Jumpscale/go-raml/blob/master/raml/CONTRIBUTORS

10. Ekatalog Bukopin(as backend dev). Training Management For Bukopin
Users. Built Using laravel, fcm and mongodb,

11. Suitsuit game engine. As backend dev. Android game based on rock,
scissor, paper game. Provide api and build engine such as pvp rank, pvp
free, user statistic, fcm integration. Built using go, mariadb, fcm and
docker

Software Engineer

Netxcel Systems Pte LTD
09.2014 - 09.2015

Develop, maintain and deployed application. mostly on telco industry. Completed and maintenance projects:

  • Software Define Network for starhub.
  • Inpulse UPCC, act as top layer for provisioning, buying phone credit,
    Implements CR
  • Inpulse M1, provisioning , implements CR
  • Media insider, php, laravel

Technology Stack : java, spring, hibernate, mysql, javascript

Technical Consultant

Kana Software, Inc
02.2013 - 08.2014

Completed CallerID and password reset, web
service integration(SOAP), Client load balancing using round robin
algorithm, customize telephony, pagination, and reporting data dumps,
upgrade and migrating existing Kana version .


Built using Kana Proprietiary tools, Jboss, oracle.


Technology stack : java, javascript, oracle, jboss, scrum , team city, apache solr

Software Engineer(Full Stack)

PT Voltras International
09.2011 - 02.2013
  • Delivered projects to company within specific timeframes.
  • Learned new skills and applied to daily tasks to improve efficiency and productivity.

Projects:

  • Develop B2A and KCP for sriwijaya air
  • Travelagent.co.id, webservice for external party, integration : abacus, domestic airline, hotel(gulliver travel association).

  • Technology Stack : java, tomcat, oracle, ibatis, jsoup, jquery

Software Engineer II (Working Remotely)

Connected Freight Pte, Ltd Via Deel
04.2023 - 02.2024

Basically same company but they want to switch provider

TMS + OMS Squad

  • Enhance error handling in cf-platform, differentiate internal error and user error and make it more readable. also modify serverless vtl template to adapt to new error handling
  • New Feature and module: Submit good received note
  • Utilizing platform notification to build in app notification for oms
  • TMS maintenance and enhancement : handle pre-signup error, set cloudfront cors
  • OMS maintenance and enhancement: added sku dynamic fields and supplier code on export order. Added new completed status

Technology Stack: serverless, typescript, aws

Senior Software Engineer

kitabisa
12.2021 - 04.2022
  • working on campaign team
  • design and build campaign revision draft feature
  • enhance monitoring(visibility of application)
  • Implement tracing using opentelemetry for pusing to jaeger
  • solving security using bluemonday
  • design and create migration script from old service to new service
  • maintenance + improvement of existing code


Skills: Go (Programming Language) · RabbitMQ · statsd · PostgreSQL

Senior Software Engineer (Working Remotely)

Rakuten Travel XChange
04.2022 - 10.2022

Rejoin after resign from this company. Completed several projects such as:


- Do profiling and optimization to reduce resource by using sync pool and go gctuner to several supplier for reducing latency and memory
- rakuten v5 integration which contains 5 services(rakuten-v5-sync-api, rakuten-v5-sync-consumer, rakuten-v5-search, rakuten-v5-bmc and rakuten-v5-static) using postgres, golang, scylladb and rabbitmq
- create audit log on admin app(rabbitmq, postgres partition)
- another maintenance and bug fixing task

Stack: go, kubernetes, docker, postgres, scylladb, rabbitmq, gcs

Education

Bachelor Degree - Computer Science

Telkom Institute Of Technology
Bandung Indonesia
07.2007 - 12.2011

Skills

Golang

Timeline

Career Break

Self Employed
03.2024 - Current

Software Engineer

Turing
01.2024 - Current

Software Engineer II (Working Remotely)

Connected Freight Pte, Ltd Via Deel
04.2023 - 02.2024

Software Engineer II

Connected Freight Pte, Ltd (Bankrupt/Shut Down)
11.2022 - 02.2024

Senior Software Engineer (Working Remotely)

Rakuten Travel XChange
04.2022 - 10.2022

Senior Software Engineer

kitabisa
12.2021 - 04.2022

Senior Software Engineer

Rakuten Travel XChange
04.2019 - 10.2022

Backend Engineer

Avnos.io
08.2018 - 04.2019

Senior Software Engineer

Decenternet
07.2018 - 08.2018

Software Engineer

Freelancer/Self Employed
09.2015 - 08.2018

Software Engineer

Netxcel Systems Pte LTD
09.2014 - 09.2015

Technical Consultant

Kana Software, Inc
02.2013 - 08.2014

Software Engineer(Full Stack)

PT Voltras International
09.2011 - 02.2013

Bachelor Degree - Computer Science

Telkom Institute Of Technology
07.2007 - 12.2011
Yogy Fresta RahmawanSoftware Engineer