Hank Yu

Android Developer

A well team player who can communicate effectively with colleagues.

 Able to conceptualise, develop and deploy applications independently.


Taipei,Taiwan
[email protected]

Work experience

Android Developer, 雄獅資訊 ( June. 2021 – Present )

Tech Stack: Kotlin / Rest API / JetPack Architecture Components
Key achievement:
  • Work on a mature product with lots of APIs

Mandatory Military Service ( Jan. 2021 – Apr.2021 )

  • Taiwan law provides for one year of compulsory military service.

Android Developer, 佛系科技有限公司( May. 2020 – October.2020 )

Worked with designer and product manager to deliver user-friendly and visually appealing app for the Android platform.

Key achievement:

  • Built the entire app with designer and product manager that was downloaded over 5K times.
Achievements:

  • Developed native Android applications and frameworks using Kotlin.
  • Parse URL to download videos.
  • Created a customize EXOVideo Player that can achieve endless slide to next video and supported API Level down to 16.
  • Implemented complex user interfaces and animations.
  • Firebase notifications, analytics.
  • Restful API and parsing JSON
  • Pro Guard
  • Used NDK for saving the password.
  • AES encryption

Education

Bachelor of Information Management 

 National Taipei University of Education, Taiwan, 2019

Projects

            This Demo Project is an app showing daily agriculture price in every market in Taiwan, using Architecture Components and      
        fetching remote data with retrofit and flow.

        Technical skills used in the project :
             - Use MVVM
                    - ViewModel decouples from Activity/Fragment
                    - Activity/Fragment is a pure view class that observes the data changes and updates itself.
                    - Make the unit testing easier, writing tests for ViewModel no need to take care the Android related stuff.
             - Use ViewBinding
                    - ViewBinding is null-safe and type-safe, so we won't have the NullPointer and Class Cast exceptions anymore, instead of
                      seeing the crash during the run-time, we can now see the error at the compile-time.
             - Added Moshi converter 
                    - The converter helps us to parse and convert the JSON response into Kotlin/Java class
             - Separated the network objects and domain object 
                    - Mapping network response to domain object which only contains the infomation we need 
             - Use ListAdapter instead of RecyclerView.Adapter 
                    - ListAdapter helps to calculate the difference between the old and the new list, so it only updates the item that needed to
                      be updated. no need to call `notifyDatasetChanged` manually
             - Use Dagger/Hilt for dependencies injection
                   - to separate concerns
                   - class reusability / flexibility 
2. Cookla
           Cookla is an incomplete app I am building with an product manager who also does the design part.  It is an app that shows  
     what's in your fridge and you can easily to manage it. We also add a page to show the daily agriculture price in every market in 
     Taiwan, to let people always buy food in a reasonable price. 

       Technical skills used in the project :
            -Use Room database
                 -to store data in local database
                 -to make sure the data is the single source of truth
            -Use ViewPager2
                 -to achieve a scrollable calendar
            -Use navigation
                 -to achieve bottom navigation with architecture component
            -Use Retrofit with moshi
                 -to retrieve data from API
            -Use Paging
                 -to load data in pages
            - Use Dagger/Hilt for dependencies injection

Skill


  • Chinese - native
  • English - fluent

About Me

    I want to be more than just an engineer. I see every app I have done as my children, I will try my best to improve them. I joined a startup called 佛系科技 as my first job. I had experienced a full product lifecycle, making a rough idea into an app with my colleagues through market research, competitive product analysis to UI, UX design to software architecture. It was challenging because I needed to learn marketing and product design and analyze the feasibility in a short time , and I have gained a lot throughout the process.  Product design is my favorite part of this journey. It might look like a plain and normal page, but actually we went through numerous discussions to design every part of it, from the button reaction to the whole UI flow. The process of everyone trying their best to not only complete their job, but completing it perfectly really inspired me to be more than just an engineer implementing the feature. I want to be a product owner who knows every part of it, and take the responsibility for improving it.

Hobbies


Readings 00 00@2x

Traveling

Traveling enhances my vision and lets me discover different aspects of the world.


Readings 00 01@2x

Mobile App Development

It is not only my job, but also my hobby. I like to dive into new skills in my leisure time.


Readings 00 00@2x

Volleyball

Volleyball is a sport that emphasizes teamwork. Working hard with the team to win is the reason I like it.


Readings 00 01@2x

Reading

I like to read all kinds of different books. My favorite book recently is "Be Water, My Friend" by Shannon Lee

Certificates

Toeic.Listening and Reading 895/990

12/2020

Powered by CakeResumePowered by CakeResume