ABOUT ME
Hi! My name is Jason Park. I majored in Computer Engineering and have been working as an Android software engineer.
My specialty is implementing complex custom views and interactions.
My strength is stably improving app performances by refactoring the legacy code of the service and writing test cases.
Having experience in deploying and managing a global service which has been in service for over 10 years, I feel I can contribute in not only new projects but also ones with legacies.
SKILLS
Professional : Android Kotlin Java Git Jenkins Coroutine RxJava Jetpack Compose Dagger WorkManager Room MVVM MVP SQLite Retrofit Glide Lottie
Experienced : AWS Docker Kubernetes Spring Boot Flutter C C++ Python PHP HTML CSS MySQL ORACLE Tensorflow AR OpenCV OpenGL
WORK EXPERIENCE
NAVER
OCT 2018 - Present, South Korea
android software engineer
NAVER is the leading search engine company of South Korea and is frequently termed “the Google of Korea”.
It has successfully launched numerous subsidiaries such as LINE, SNOW, NAVER CLOUD, NAVER WEBTOON and WORKS MOBILE to provide IT services to a global audience.
Company Introduction, Major Service Introduction, NAVER Search Page
Development Project
NAVER CALENDAR NAVER MYBOX SMART WATCH CI/CD
WORKS MOBILE
SEP 2017 - SEP 2018, South Korea
android software engineer
WORKS MOBILE, a subsidiary of NAVER, has created LINE WORKS (LINE messenger for enterprises), which is similar to Slack.
LINE WORKS currently holds the leading marketshare in Japan regarding enterprise messenger apps.
Company Introduction, LINE WORKS Introduction, NAVER WORKS Introduction
Development Project
JUL 2017 - AUG 2017, South Korea
software engineer intern
LG SOFT INDIA
JUL 2016 - AUG 2016, India
software engineer intern
LG SOFT INDIA is the largest global R&D center of LG Electronics.
Intern Project
PROJECTS
NAVER CALENDAR
Android Native App
NAVER Corporation
NAVER Calendar is a calendar app which helps the user manage schedules, anniversaries, timelines, and to-do lists.
NAVER Calendar was launched in Feb 2012 and the number of total mobile app downloads is 5,000,000+.
Developed Content
1. Renewal of Major Functions and Design
• Created month/dual/day calendar custom views and animations
• Prevented frame-drops when animation is in motion by improving the process needed to load the user’s schedule
1-1. Development of Custom Month/Dual/Day Calendar and Animations
• Developed new month/dual/day calendar presentations and animations
• Implemented behavior instances in month/dual/day calendar fragments to make scroll and touch events independant and process unique animations accordingly
• Utilized ‘Android Profiler’ to detect and renovate code which requires a large portion of CPU and memory usage. This prevents frame-drops from occuring when the dual mode transition animation runs in month/dual/day calendar
• Month/dual/day calendar views can take more than six types of scroll and touch events, such as horizontal/vertical scroll and calendar transition scroll
• Applied custom animation to month/week/day calendar fragment design for smooth transitions
1-2. Optimization of Schedule Loading
• Optimized the data loading procedure by creating a common data loading module for the schedules, anniversaries, timelines, and to-do fragments. Improved performance of the schedule loading by caching loaded results
• Made schedule loading process multi-process safe by using ContentProvider for widgets which run in multi-process environments
2. Implementation of CalDAV, iCalendar Standard Protocol-based Calendar Synchronization
• Developed new functions of calendar synchronization based on CalDAV, iCalendar international standard protocol
Calendaring Extensions to WebDAV RFC
Collection Synchronization for WebDAV RFC
Scheduling Extensions to CalDAV RFC
• Made manual/foreground/background synchronization process multi thread-safe and guaranteed data integrity
• Implemented periodic widget updates via background synchronization, using WorkManager
2-1. Maintenance of Google and Samsung Calendar Synchronization
• Maintained Google Calendar and Samsung Calendar synchronization according to CalDAV, iCalendar international standard protocol
3. Development of Calendar Widgets
• Developed widgets which can be dynamically resized
• Implemented user options to set themes, text size, and background transparency
4. Implementation of Dark Mode
• Implemented dark mode which functions according to the device’s dark mode or the app’s user setting
• Designed and developed a widget dark mode independent from the device’s dark mode
5. Unit and Integration Testing
• Developed unit and integration tests for the synchronization, schedule loading, and date/time relevant business logic
• Broadened test coverage by creating more than 400 test cases for legacy and new business logic
LINE WORKS
NAVER WORKS
Android Native App
WORKS MOBILE Corporation
LINE WORKS is a business communication platform which offers features, such as message, calendar, mail, drive, contacts, which is similar to Slack.
The product is provided as LINE WORKS in global markets and NAVER WORKS in the Korean market.
Developed Content
1. Renewal of Design and Functions
• Applied new calendar navigation drawer design and developed functions to hide calendar list
• Supported temporary saving of calendar schedule being recorded by the user
• Provided user options to set font size in calendar service
• Converted PNG image files to SVG files to minimize app size
2. Implementation of CalDAV, iCalendar Standard Protocol-based Calendar Synchronization
• Developed new functions of calendar synchronization based on CalDAV, iCalendar International Standard Protocol
Calendaring Extensions to WebDAV RFC
Collection Synchronization for WebDAV RFC
Scheduling Extensions to CalDAV RFC
3. Development of Google Calendar Synchronization
• Implemented Google authorization based on OAuth 2.0 Protocol
• Developed synchronization with Google calendar which is based on CalDAV, iCalendar International Standard Protocol
Google CalDAV API Developer’s Guide
4. Improvement of Periodic Background Synchronization
• Implemented periodic widget updates via background synchronization, using JobScheduler
• Replaced Service with JobScheduler to overcome the background execution limit policy of Android
NAVER MYBOX
Android Native App
NAVER Corporation
NAVER MYBOX is a drive and photo service which helps organize and store photos and files, similar to Google Drive and Photo.
NAVER MYBOX launched in May 2010 and the number of total mobile app downloads is 10,000,000+.
Developed Content
1. Renewal of design and functions
• Led transition from Java to a Kotlin based development
• Refactored legacy code and redesigned and restructured the ‘Navigation Drawer’ code for better re-usability
2. Improvement of download performance and stability
• Improved the download module performance and stability to enable downloads of 10,000+ multiple files at once
3. Development of app banner module
• Implemented the event and notice banner UI which is exposed in the main page and navigation drawer
SMART WATCH
Android Smartwatch
Wear OS
NAVER Corporation
Wear OS is an Android-based smartwatch operating system produced by Google.
Developed Content
1. Wear OS technology analysis
• Analyzed the technology to release NAVER Calendar Android smartwatch app
2. Wear OS detailed guide summary and sharing
• Summarized and shared Wear OS technology to design and release NAVER smartwatch app, the most popular search engine among Koreans, and NAVER PAY smartwatch app for offline payments
CI/CD
Docker
Kubernetes
Jenkins
NAVER Corporation
Jenkins master/agent environment was set-up to build and deploy multiple android services with a single Jenkins using Kubernetes in order to reduce CI/CD management resource for NAVER CALENDAR, NAVER MYBOX, NAVER MAIL, NAVER MEMO, and NAVER CONTACTS.
Developed Content
1. Establishment of Jenkins Master/Agent in Kubernetes
• Jenkins master/agent in Kubernetes was established with Jenkins JNLP to automate build and deploy procedure of multiple android services with a single Jenkins
• Developed Jenkins master pod to take requests from development projects and generate a agent pod which builds and deploys android services
2. Development of Android Build Docker Image for Agent Pod
• Made a docker script file to build android projects in a agent pod
• Uploaded a docker image file for android build in a docker repository so that the android build environment can be set-up when the agent pod is allocated
3. CI/CD set-up for multiple android app services
• Set up deployment automation of NAVER CALENDAR, NAVER MYBOX, NAVER MAIL, NAVER MEMO, and NAVER CONTACTS via single Jenkins Master
4. SonarQube static analysis tool set-up
• Set up SonarQube static analysis tool to accurately analyze technical debt of NAVER Calendar app project in real time
• Analyzed and shared the SonarQube technology so that SonarQube could be applied to NAVER app project, the most frequently used search engines by Koreans, and NAVER SmartBoard app project
MESSENGER
Android Native App
Tensorflow
DeepLeaning4J
WORKS MOBILE Corporation
Messenger is a machine learning based messenger which arranges a meeting by recommending attendees, conference rooms, and meeting times based on daily scrum or weekly conferences.
Developed Content
1. Implementation of Messenger App
• Designed and implemented the UI and module for the message transfer between the server and the client, using MQTT
2. Development of the Schedule Recommendation Model
• Developed an app to utilize the schedule recommendation model stored in android devices to recommend server-independent schedule
• Created a schedule recommendation model, using word embedding in Tensorflow, based on previous meeting titles, dates, attendees, and conference room information
Friender
Web Application Server
LG SOFT INDIA Corporation
Friender (a compound word of ‘friend’ and ‘finder’) recommends travelling companions.
Developed Content
1. Development of Web Application Server
• Set up an AWS server and developed a PHP based REST API web application server
2. Design and Foundation of Database
• Designed and set up MySQL database
Education
Kyungpook
National University
B.S. Computer Engineering
Mar 2010 - Feb 2017
Scholarship for Academic Excellence, Feb 2015
Courses
Data Structure, Algorithms, Computer Network, Databases, Operating Systems, Network Programming, Software Design,
Mobile App Programming, Augmented Reality, Java Programming, C Programming, C++ Programming,
Engineering Project Management, Theory of Computer Science, Computer Ethics