Avatar of 陳柏佑 (Owen Chen).

陳柏佑 (Owen Chen)

Senior Android Software Engineer
Although I majored in EE, I gradually realize that I prefer software programming, and especially emphasize the maintainability and scalability when developing large-scale project. Eager to learn new things: I studied Kotlin, Java 8 and some advanced Git commands just for interest in my spare time. Willing to study and share new techs with colleagues.
Logo of Cave Taiwan.
Cave Taiwan
Logo of National Chiao Tung University.
National Chiao Tung University
台灣台北市

Skills

android
Android Studio
Java
kotlin
Git
Design Patterns
json
Multithreading
SQLite
Retrofit2
MVVM Android Architecture
Gson
OkHttp3
coroutines
Databinding
Reactive programming
Functional Programming
moshi
Koin
Room Database
WebSocket
scarlet
RESTfulAPI
Paging Systems
Glide
protobuf

Languages

English
Fluent
Chinese
Native or Bilingual

Work experiences

Logo of Cave Taiwan.

Android Software Engineer

Cave Taiwan

Jan 2021 ~ Present
Android developer in a startup company TODO
Logo of Grindr Taiwan.

Mid Android Software Engineer

Grindr Taiwan

Feb 2020 ~ Oct 2020
9 mos
Development and maintenance of Grindr app, which is available on Google Play with 5M DAU. * Functionality in chat room -- Message rendering with custom view -- Message loading, caching, paging -- Jumping (scrolling) among paged messages * Message searching using SQLite Full-text-search (FTS) and text tokenization, especially on a large database file (>500MB) *Refactor: -- Replace outdating ViewPager with ViewPager2 (with built-in right-to-left layout) -- Convert RxJava to coroutine *Bugfix: -- Bugs about serialization --- Serialize/deserialize the singleton of a sealed class --- NotSerializableException when serializing a closure -- Initialization for WorkManager *Performance: -- Improve DAO query time by 90% (100ms → 10ms) -- Minimize overhead of thread-switching when using coroutine by 95% (400ms → 20ms) === Laid off because of the transition of management rights, all new-employed RDs are fired.
Logo of ASUS.

Senior Software Engineer

ASUS

Oct 2016 ~ Feb 2020
3 yrs 5 mos
Development and maintenance of Asus in-house app: AsusGallery. - Develop timeline page with zoomable layout: pure OpenGL, no any Android View (https://youtu.be/WBTgdrz7i4s) - Integrate SAF(Storage Access Framework) into non-SAF code architecture (Including writing utilities classes and sharing with another in-house app) - Improve and refactor interactions with SQLite (writing large structured data into databases, getting 5 times improvement: 800s --> 140s) - Improve app cold-start launch time and speed of switching between pages - Solve various bugs -- Removing Thread.sleep() from UI thread -- ANR related to GLSurfaceView and MediaCodec -- Deadlock resulting from nested synchronized blocks - Cooperate with UI designer team (including writing an utility class and sharing with colleagues) * My own utilities module (for debugging Android, implemented with Kotlin) https://github.com/adherencegoo/XDDLib

Educations

Logo of National Chiao Tung University.

National Chiao Tung University

Master’s Degree
Telecommunications Engineering

2014 - 2016
Description
Although I majored in Telecommunications, my research subject is about Computer Vision and Augmented Reality. The goal is to detect an open palm in real-time video stream. Thesis: hand tracking in real-time video (https://youtu.be/tCax5fFZlz0)
Logo of National Chiao Tung University.

National Chiao Tung University

Bachelor of Engineering (BEng)
Electrical Engineering

2010 - 2014
Activities and societies
交大彰友會 副會長 及人服務團 公關長 20120901 新竹市兒少保護宣導嘉年華會 兒保劇劇長
Description
Final project of course Java: https://youtu.be/ggFMMHf8PzY
Powered By CakeResume