Hi, my name is Aditya Yanuar.
And this is me:
I am a Fullstack Developer, mainly working on Web and Mobile apps. I use several languages and frameworks such as Golang Echo, PHP Laravel, CRA (Create React App), NextJS, React Native, NodeJS Express, MongoDB, MySql, PostgreSQL, Bootstrap, Tailwind, Python Flask, Docker and Docker Compose, to name a few. Throughout my career, i also had a chance to work with other stacks like VueJS, C# .Net Core, InfluxDB, Ionic and Thingworx, although these things are not really my favorite and I only use them since my job requires them at the moment.
I also had a chance to work with Data Science and AI stuff during my Master degree years. I did some interesting projects using Panda, Numpy, Keras, Tensorflow, Jupyter Notebook, and others Python based data & AI works.
Here is the snippet of my Job & Academic history:
Gameloft (2012 - 2016)
I actually started my programming career as a game developer, particularly Java game developer. Have you ever played Asphalt or American Army on your Nokia N-Gage back in the days? That’s the kind of game I was working on (not exactly the title wise, but you get the picture right?). First game that has my name on its credit page is Dark Knight Rises. That was developed exactly before the same titled film released back in 2012. That was fun, challenging, and got me the taste of real professional coding. Other than Java (specifically J2ME in this case), I got the chance to work on many other games and other platforms such as Android port and Windows Phone using Java to C++ conversion. I’ve learnt code optimization heavily at this stage, since target devices i was working on have very minimal resources, we’re not talking about 1mb memory footprint here, some devices are actually packed with just 500kb, more or less of Java heap size. This company also let me have the chance to work with a well defined-streamlined process of a typical big-multinational company. I worked closely with other departments such as QA (Quality Assurance), 2D Artist, Game Designer, Game Producer, etc. I started to work there from April 2012 as Junior Programmer, then in February 2013 I got promoted as Programmer Supervisor. Throughout my career there, i produced several games that serve million of players & downloads (both legal or illegal download :') )
AWC Digital (2016-2022)
I think personally around 2015-2016 as a startup hype moment, I might be late to the game because startup hype was actually started in the beginning of 2010 (or years before that) when smartphone usage really took off, correct me if i’m wrong. At that moment, it was like anywhere I go I’ve heard things about NodeJS, Web App, mobile apps, and other buzzwords like microservice, REST API, etc. That gave me fear of missing out, so I was starting to re-learn web development and mobile apps. At that time, I got an offer from my college friends who just started a software company. It was a good chance for me to switch careers from game developer to web developer. I was also in need of a more flexible work environment since I had a plan to continue my study to master degree. In the beginning of my career here I was dealing a lot with PHP CodeIgniter, good ‘ol JQuery, MySql, I also got my hands on anything needed to get the job done, it can be Python, Redis, ElectronJS, etc. In this stage also, I was exposed to devops tooling like containerization (docker, docker compose, etc), SSH, reverse proxy, etc. It was also the first time I used GIT professionally as a versioning system, GIT is indeed more comfortable & faster to work with than SVN, a versioning tool I used back then in Gameloft, in my opinion. I also had the chance to do experiments with lots of stacks like VueJS, Golang, Moodle and many others. This was the first time for me being a part of developers who create several systems with thousands of users and thousands (if not millions) of db records to handle.
Insig Tech (2019-2021)
In the beginning of 2019, there was a joint attempt by AWC Digital & Insig Tech to develop software for the IOT platform. I was chosen as part of AWC Digital to help Insig launch a new IOT device monitoring system. So technically I was both an AWC and Insig employee. This time I was introduced to Thingworx, a platform specialized to create IOT monitoring sites. It was fun and enjoyable to create a small prototype with just a handful of IOT devices. But things got really hefty once we started to deal with dozens of IOT instances. It was not scalable, in short. Also i’m particularly skeptical with proprietary SDK, in which we don’t have access to the lower level to do optimization needed. Anyway, we then decided to create new from scratch using more open stacks, this time we choose VueJS, C# .Net Core, MS SQL and InfluxDB. As long as you enjoy IOT development, there is still something missing when you can’t access the devices physically yourself. Me being a remote worker at that time, that was exactly my case. As a fullstack developer myself, I tend to have a desire to control or at least have sufficient understanding of how the system works end to end. So when a new opportunity comes, this time was mobile development from AWC Digital, I choose to go back.
AWC Digital (2021-2022)
I got an offer to lead a new mobile app project when I went back on board to AWC Digital. As someone who loves to try new things in tech, I have tried Flutter before the offer and I was amazed by how convenient developer experience this framework has to offer. So I accepted the project without a second thought. This project was interesting because as a mobile app, it was intended to work both online and offline. Users expect they can still use the app without losing any data even when the device is offline. It was quite a challenge by itself, because we’re not only talking about REST API here, the app also has a realtime feature which utilizes websocket, so dev should make sure the websocket instance will revive itself when device is back, connected, with inevitable loss of previous websocket connection ID. After the device is online again, it will send any data users have while they’re offline to the server in several batches. Anyway, the final app went smoothly for users while they were using it in underground mining, and then when they went back to the surface, they got the connection back, all data was sent to the server in one piece. That was a biggest achievement for us as dev and actually the main unique selling of the app itself.
For me, staying 5+ years in a company is considered long enough to stay back, hold your breath and think again about what you have achieved and what’s next to pursue. So then, back in August 2022 I decided to join Klyp, an Australian agency that deals with software development, marketing, design and social media. Here, everyday is like a new day for me, with each kind of challenge and unique problems to solve. I might say this because I’m new there, but in general, the projects are short (think about months to develop) and each project mostly has something new for me to learn, that’s why it’s exciting but also challenging. I’m still learning the pattern here (in terms of technical and behavioral things) and improving myself to reach the most effective way to work for me there.
Bachelor of Informatic Engineering, Yogyakarta State University (2008)
This was the first and only bachelor degree I enrolled in after high school in 2008. This was also the first time I was exposed to programming. I had a computer in my junior high school years, but since then I only used it for office typing, playing games, creating silly design, changing configuration, heck I’ve even never heard about terms programming back then. I had a computer without internet access until my late high school years, which was still an expensive dial up gprs modem from my motorola e398 phone. I only had access to computer related information from computer tabloid, even there was no single word of programming on it, so weird indeed. No one was telling me that I could do (or telling my computer to do) so many things with programming. Anyway, in this college I was first introduced to Java. Honestly I had no idea what it was for? why should I learn silly terms like variable, method, that ignorant rewarded me with C+ in Intro to programming course, lol. For me back then, computer science was all about electronic components: ic, resistor, transistor, you name it. So I excelled on that, and had a shining A i was proud of. Then in 2nd semester, I pushed myself to take Java programming more seriously. That day, when I finally got my head wrapped around the concept of variable, method, conditional statement and iteration (I didn’t care about class things yet), I started to think, “wow that’s so powerful! imagine how many things we can do with all that!”. Since then I have dug more into Java and got a solid A on that subject. And programming in general became a fun activity for me. That was also the time when full bare metal install linux distro into pc/laptop was a thing, I care less about my data (had some backup stored on flash disk tho). All that just for the purpose to try a new shining linux distro, oh good times!
Master of Computer Science, Gadjah Mada University (2017)
This time, computers were more into science than engineering. I was fully aware of that, and the fact that I, with a minimum background of math will face difficulties with math equations along the journey. But once you solved and got a grasp of how some complex equation works, that was always fascinating. Once you’re able to crack the complex equation, you will become a better programmer in general (at least you will feel like you become one :) ). This time I began to understand how machine learning works, what’s difference between classification and regression, supervised & unsupervised, how to choose better ML algorithm from conventional ML like linear regression, SVM, naive bayes to any variation of ANN like CNN for certain problem & dataset (deep learning is overrated for most cases), how to tune parameters, optimize model training & give better testing/validation result, etc. I’ve learnt various topics like pattern recognition, big data, image processing and math for data science. This time I also had a chance to work on an interesting project like hotel recommendation based on various variables like location, rating, etc, also letter recognition using CNN & Capsule Network, all that using python & its vast amount of library.
That is a little bit about me, you can contact me at email@example.com