Portfolio

Here you will find some of my previous work in the companies, personal projects, and client projects that I worked on.​
Ilcontabile Online

2023 | Freelance Project

Ilcontabile Online is a web application used to present data from ERP system as a chart and tables. The project’s UI was build with Syncfusion Blazor Component to present the data into chart and tables.

C#
Visual Studio
Blazor
IIS
SQL Server
Entity Framework
Syncfusion
Linea

2023 | Freelance Project

Linea Ltd is a company that specializes in the distribution of fresh food products such as milk and yogurt. They utilize refrigerated vans for their operations. The client has expressed a need to develop a versatile application that can be used across multiple platforms to efficiently track the inventory of products entering and leaving the warehouse. The application will be integrated with a Sunmi device, allowing seamless scanning of product barcodes to add items to a comprehensive table. Additionally, the application will support the printing of the table directly from the device via a convenient Bluetooth connection.

C#
Visual Studio
MAUI
MVVM
Serilog
Google API
SQLite
Plugin BLE
Calcula: Daily Calculator

2022-2023 | Self-Project

This project is a re-write from the previous project (Simple Calculator Lite) and uses Google Material You (Material 3). A new feature was added: Currency converter, the source code pattern is also refactored into MVVM design.

C#
Visual Studio
Xamarin.Android
MVVM
Polly (Retry Policy)
Serilog
Google Material 3
SQLite
Firebase Crashlytics
InAppUpdate
Simple Calculator Lite

2021-2022 | Self-Project

This is my first project when I was learning to create an Android application and also learning C#. This project uses Xamarin.Android with Google Material Components (Material 2) for the UI and had been published in Google Play.

C#
Visual Studio
Xamarin.Android
InAppBilling
Firebase Crashlytics
Google Material 2
Cellmatic

2022-2023 | PT. Promanufacture Indonesia (Formulatrix)

I was working in a team that creates an automation system for cell culture as a backend software engineer. I worked on some scopes such as infrastructure & scheduler using C# ASP .NET web application & PostgreSQL database. The product is consisting of so many sub-systems, such as:
– Storage to store the inventory to be used for cell maintenance.
– Incubator to place the living cells while it’s not being maintained.
– Refrigerator to place the media needed to make the cells alive & feed.
– Rover to handle the transportation of all cells, media, & inventories.
– etc.

  • As infrastructure team, I implemented Unit Tests using xUnit to catch bugs early before the Engineer deploy their code to the hardware for testing. Also fixing some bugs such as notification flow, logging, etc.
  • As a scheduler team, I implemented an error handling feature. We know that our system is so big and vulnerable to errors. With error handling, the system can take a recovery action if there is an unexpected behavior such as the Rovers collided, etc.
C#
Jetbrains
Web API
Docker
PostgreSQL
xUnit
Dependency Injection
Sniper Fury (Gameloft Shop)

2020-2021 | PT. Gameloft Indonesia

This project give new knowledge about Online Multiplayer & DLC system. My biggest tasks are Remove Online Multiplayer Feature, and Modify DLC building system. In order to modify DLC building system, I’m mostly working with `python` language.

  • Online Multiplayer’s code running in Game Server. To remove this feature, I need to move the code into client side (merged with the whole game code). Some of the implementation wrote in python language, so I migrate the implementation from python into C++ language. Also migrate the communication method from client-server become client-client.
  • To adjust the game size, Game Designer need to handle custom size optimization for each file (currently we have handler separated on platform: windows/ android) so I managed to modify the building system in python language to meet Game Designer needs.
  • Also we’re move some assets into DLC (Downloadable Content and at the moment, DLC system has been modified and not working properly. So I managed to fix the system by modify the mechanism for DLC.
Real Football 2021

2020 | PT. Gameloft Indonesia

RF 2021 is being updated and replaced with RF 2022, but RF 2022 is handled by another team.

The next sequel of Real Football which created in 3D world. In this project, I got new experience in using Flash IDE (an old tool using ActionScript) to help Game Designer integrate UI with game code. The game mechanic is based on the very old game and we need to update used libraries to the new version. Also this project have new tutorial flow which need to implements.

  • Update the old libraries into their new version leads to create so many issues. My task is to find the best version which not producing too many errors, then do the libraries migration.
  • UI are reworked, some menus was added and other was deleted. Game Designer need Programmer to integrate UI with the game code. To create new UI menu I need to create new ActionScript to handle it’s behavior, also to delete existing UI menu I need to check the whole ActionScript and the game code itself to keep the game stable.
  • The tutorial flow created using xml file, I’m managed to implement this flow which related to both UI & game code.
  • Other tasks: Implement Cloud Save mechanism using Gameloft internal library.
Casual 3D Football Game

2019 & 2020 | PT. Gameloft Indonesia

The project is not published, but it's similar to Football Strike which is a casual game.

A casual 3D football game provides simple user action. User need to swipe the screen to make the ball kicked towards the destination in 3D world where the cursor ended. Shoot the ball into the goal to get higher points before the time’s over. The game can be played in solo mode or battle with AI, also there’s an obstacle & shoot target.

This is one of my favorite project because it has the biggest scope I’ve ever working for new-implementation fields. We change the non-football game which using modern 3D physics library become a football game. Most of my tasks in this project are implementations of 3D collision & physics behavior (gravity, force, etc.), so I got lot of experiences to use 3D physics library for the game development. Also the tasks is related to Ball’s AI which relies a lot on physical and mathematical calculations.

  • We’re using old football game as a reference to implement the features we’re needed into the current non-football game. Physics behavior is one of the part we’re needed to re-implement. I’m successfully migrate the physics behavior (collision, gravity, updates, etc.) from the self-defined (from old football game) to be using physics library (latest non-football game).
  • In battle mode with AI, there are two balls which can collide the goal net in the different position at the same time and we’re using animation to perform goal net’s touched behavior. I’m successfully change the behavior using cloth-like body behavior so the goal net become more realistic when being hit by two balls. This is the hardest task and I need to looking through rendering library to find the vertices position which can be modified.
  • Other tasks: Implement breakable object (shoot target/ bulls eye) with physics behavior, convert UI swipe action into ball kicked AI, curved ball trajectory (created with mathematical formula), add physics property into Debugging tools so we can tweak value easily, collision handling for all objects.
Real Football 2019

2017 & 2018 | PT. Gameloft Indonesia

RF 2018 is being updated and replaced with RF 2019

RF 2018 is the first Java PHD project I’m working on when I was an internship employee. After a couple of weeks, I was moved to other Java projects until I returned to this project to handle the HVGA build (RF 2018 & 2019).

  • HVGA (Half-size VGA) is one of the screen resolutions, I’m managed to make sure this build has no bugs when released. Most of the bugs are related to UI size & position.
Rival Wheels

2018 | PT. Gameloft Indonesia

The image above is an HD version of Rival Wheels, my project is published on an old Java phone and currently, I can't find the link to this.

This project is giving me new experiences to handle sound implementation based on the project’s master and also helps superior Programmers to optimize the game size through 2D sprite assets.

  • Some Java devices can only use one thread to play sound, it makes an issue when we need to play sound while another one is playing.
    The game size should be reduced to meet the requirement, here I help the superior Programmer to resize & remove sprites with his instruction.
  • We’re porting the game into some device screen sizes, there’s a bug that two obstacles (cars) were stuck with each other in some devices. I successfully fix the position by code so it’s not making new issues in other screen size.
Paradise Cruise

2017 - 2018 | PT. Gameloft Indonesia

"Paradise Cruise" is similar to "The Love Boat", but published on an old Java phone and currently I can't find the link to this.

This is my first porting Java game project when I was an internship employee. In this project, I’m successfully implementing a mechanism to explode bubbles in 4×4 & 5×5 space areas.

  • The game designer wants to add a new exploded item with a 4×4 & 5×5 space area. The mechanism for an explosion exists but only works with a 3×3 area, so as a beginner I read the mechanism and re-implement for the new expected space area.
  • Other daily tasks are to open bug bases and fix them.
Scroll to Top