Slide 1

Slide 1 text

#Rookie’s Adventure: A 0 to 1 Dev Journey Dong Chen @iOS TECH FRESH 05/13/2025

Slide 2

Slide 2 text

Dong Chen iOS TECH FRESH @LINE # Experience Tech Lead/ Full Stack Dev @OpenNCCU NLP Researcher @CSRone x NCCU 2024 Apple WWDC Swift Student Challenge Winner # Education Master/ Bachelor of MIS @NCCU

Slide 3

Slide 3 text

01 02 03 04 # Unlocking LINE # From “What” to “Why” # More than just coding Shaping the requirements Developing like a LINER # All you need is stack overflow Breaking through the walls Diving into LINE 05 # Questions and answers Q&A CONTENT

Slide 4

Slide 4 text

# Unlocking LINE 01 Diving into LINE

Slide 5

Slide 5 text

A small team shipping huge products in a big company. LINE Client iOS Team

Slide 6

Slide 6 text

A small team shipping huge products in a big company. LINE Client iOS Team

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

Worldwide Developers Within One App So… what is my role? A little screw 􀤉

Slide 10

Slide 10 text

# From “What” to “Why” 02 Shaping the requirements

Slide 11

Slide 11 text

THINK ABOUT IT What’s happening after an feature has been requested?

Slide 12

Slide 12 text

Inside a feature lifecycle. #1 Feature/ Idea received

Slide 13

Slide 13 text

Inside a feature lifecycle. ea received #2 User research

Slide 14

Slide 14 text

#3 Pre-design study Inside a feature lifecycle. er research

Slide 15

Slide 15 text

esign study Inside a feature lifecycle. #4 Design

Slide 16

Slide 16 text

#5 Pre-develop study Inside a feature lifecycle. #4 Design

Slide 17

Slide 17 text

velop study Inside a feature lifecycle. #6 Develop

Slide 18

Slide 18 text

Inside a feature lifecycle. #6 Develop #7 QA

Slide 19

Slide 19 text

#8 Release Inside a feature lifecycle. #7 QA

Slide 20

Slide 20 text

# More than just coding 03 Developing like a LINER

Slide 21

Slide 21 text

THINK ABOUT IT What’s the most important things inside a dev cycle?

Slide 22

Slide 22 text

THINK ABOUT IT What’s the most important things inside a dev cycle? Testability Maintainability

Slide 23

Slide 23 text

How we enhance testability? - Take responsibility for the code you develop - Design for failure instead of fi xing bugs - Write tests - Learn from every lesson

Slide 24

Slide 24 text

How we improve maintainability? - Step back to refactor and code review - Think fi rst, code second - ATDD/ Clean architecture - Deliver just the proper code with top-notch quality

Slide 25

Slide 25 text

LINE CLIENT DEV Ship rapidly, refine constantly.

Slide 26

Slide 26 text

How we keep productivity? - Set hard deadline to every task - Focus on quality over quantity - Integrate project management framework (Scrum/ WF) - Undertake every task with a clear purpose.

Slide 27

Slide 27 text

# All you need is stack overflow 04 Breaking through the walls

Slide 28

Slide 28 text

What are the walls? - Unexpected behavior with unknown root cause - System hardware limitations - Cross platform support - New technique keep rolling out and deprecated

Slide 29

Slide 29 text

LINE CLIENT DEV Learning how to learn

Slide 30

Slide 30 text

LINE CLIENT DEV Ask when you needed

Slide 31

Slide 31 text

LINE CLIENT DEV Compromise with workaround

Slide 32

Slide 32 text

# Questions and answers 05 Q&A