Resume
Ricki Bin Yamin
Sr. iOS Software Engineer
Jakarta, Indonesia
Download
Summary
Software Engineer with over 6 years of hands-on experience specializing in building iOS Native Apps. Proficient in crafting intuitive user interfaces programmatically using UIKit, SwiftUI, SnapKit, and AsyncDisplayKit (Texture). Skilled in developing high-scalable applications integrating customer-centric 3rd party frameworks such as Firebase, CleverTap, OneSignal, AppsFlyer, Split.io, among others. Also experienced in DevX/Infra stuff such as setting up CI/CD, managing provisioning profiles and certificates, Push Notification, modularization design system, scripting in shell and ruby, and releasing apps in App Store Connect.
Experience
TIP
If a link is included in the list below, you can tap it to see my detailed achievements.
Stockbit - Sr. iOS Engineer Core/Infra
Jakarta, Indonesia (March 2022 - Present)
- Responsible to maintain project architecture and modularization.
- Maintain and Set Up
CI/CDWorkflow (XcodeCloudandGitlab-CI, previously withBitrise). - Write script in
shellandrubyto supportCI/CDWorkflow. - Support and maintain certificates and auth key (
.p12and.p8) forfastlaneintegration authentication (code signing), Push Notification authentication, etc. - Maintain project’s secret keys for development process.
- Involved in Push Notification Service migration (from
OneSignaltoFCM) resulting in a significant reduction of subscription fees by approximately USD 20,000 per year. - Develop bilingual engine on iOS to support English-Indonesian language content wording.
- Develop Dependency-Injection (DI) Engine to support cross module class sharing and to prevent circular dependency of importing between modules.
- Involved in improving security for iOS.
- Migrate the usage of
Realminto nativeCoreDatawhich cut apps build size for about 10-15 MB. - Develop UI Design System component for iOS and its component’s showcase apps (UI full programmatically using
UIKit). - Involved as Release Manager, maintain apps release cycle, and submit apps to the App Store Connect.
Traveloka - iOS Engineer | Financials Service Team
Tangerang, Indonesia (September 2021 - March 2022)
- Handle relayout Financial Service feature page.
- Handle new user challenge (PIN challenge) for known
HTTPstatus code. - Implement
MVVM-Carchitecture, with modular based using Development Pods. - Build UI programmatically using
SnapKit. - Implement Unit Test on every new line written code.
- Migrate legacy
Objective-Ccode intoSwift. - Migrate xib view into UIKit or
SnapKitprogrammatically.
RCTI+ - iOS Engineer | Part Time
Jakarta, Indonesia (August 2021 - February 2022)
- Work with Video teams.
- Develop new capability on RCTI+ video player: user interaction on video player such as fast forward by double tapping, lock window to prevent unintentional user interaction, etc.
- Develop security to prevent from screen recording and screen capturing.
- Manage JavaScript - bridge to handle communication between web apps content and native apps interaction.
DANA Indonesia - iOS Engineer | Payment Team, Lifestyle Team
Jakarta, Indonesia (July 2020 - September 2021)
- Work with Core-Payment team to develop Send Money features.
- Work with Lifestyle team to maintain “All Services” features section.
- Involved in developing E-Money feature.
- Implement
MVVM-Carchitecture, framework integration usingCarthage. - Build UI programmatically using
AsyncDisplayKit(Texture). - Implement Reactive Programming using
RxSwift. - Manage Javascript - bridge to handle communication between web apps container (WebView) and native apps.
- Implement Unit Testing as well as mocking API service.
Apple Developer Academy @UC - iOS Developer | Internship
Surabaya, Indonesia (March - December 2019)
- Implement Git Workflow in every project.
- Learn iOS Development Life Cycles.
- Learn build UI programmatically using
UIKitinstead of drag and drop usingStoryboard/XIB. - Learn build UI programmatically using
SwiftUI. - Learn
CoreDataandCloudKitintegration. - Learn
CoreML. - Build apps for guiding user to learn writing Kanji, based on
CoreML. (Final Project) - Build apps for managing boarding house rental. (Final Project)
Volunteer Experience
PLC (Programmable Logic Controller) Trainer - ITS Campus
At Siemens SciTech Competition Event, Held by ITS x Siemens (2017)
- As trainer of Programmable Logic Controller (PLC) using
Ladder Diagram(PLC programming language) - As trainer of Human Machine Interface (HMI), a companion for PLC as User Interface.
- Composing training materials.
- Material covered: basic I/O, basic logical gate (
AND,OR,NOT,XOR,XNOR), sequential logic (Flip-Flop),Timer,Counter.
Education
Institut Teknologi Sepuluh Nopember
Electrical Engineering (Bachelor) - GPA 3.84
- Final Project: Develop apps to translate braille document using Image Processing and send translation data into Braille Printer wirelessly to support Braille-Copying Method.
- Tech Stack used:
OpenCVwritten inObjective-C++, iOS Apps native development with Xcode,ESP32firmware development written inC++, implement Bluetooth andREST-APIfor communication between iOS apps andESP32. - Project on Github: github.com/rickirby/SCANDO_iOS
- Publication: sciencedirect.com/science/article/pii/S1877050921023607
- Video Demo on LinkedIn Post: linkedin.com/posts/rickirby18_on-my-final-project-thesis-for-my-bachelor-activity-6811276772794093568-Y0ze