Serving both the best customer & working experience is my top priority of the whole work.
(NOTE: This axiom is too vague and there are numberless possible approaches to fulfill this goal, so as a developer role, I will only focus on the technical parts in the next sections)
Making a reliable software / service is important to achieve the best customer experience.
In my opinion, reliable service consists of:
- Simplicity
- Friendly user interface
- Runs fast
- Lightweight
- Bug / crash free
So that the user can know why/how/what he/she wants and will do next, and not being distracted by other activities.
Above section can also be said for our working style as well. To continuously achieve the above criteria, we also need to focus on the followings:
- Code quality
- Tests
- Documentation
- Build environment
- Team culture (psychological safety, autonomy)
Since we are working as a team, it is especially important to share the knowledge and new ideas among teammates. So, team culture becomes very important of all, and many shared information are encouraged to be as transparent as possible.
Having the above best practices is also appealing when hiring new talented developers.
From my knowledge of functional programming including its underlying logics and mathematics, I can provide the (current era's) best programming solution in practice.
Though I try to make the software as best as possible, "Build Fast" is essential in our business. So my approach is always hybrid: Make prototype quickly first, then brush up.
I love improving both product and myself. For product, whenever I find weak points, I will take ownership to fix issues. For myself, I love learning new academic theories in programming, e.g. reading "functional pearl" papers.
I will talk to people or write document about any points whenever I find interesting or stuck because I believe sharing those knowledge is one of the most important aspects of the team developement.
I don't get angry at person's certain behaviors because I know everyone is different and diverse. I respect his/her good parts and push them forward.
"Loves improvements" sometimes becomes "improving too much" that no one else might expect. This sometimes happens when fixes will only take short period of time. (This won't happen for big refactoring since I share its blueprint first before coding)
I can speak and listen English fairly OK in the daily work, but I still have problem with understanding every meaning. For example, I sometimes misuse the word "should", which may feel strict to others. I'm currently improving my English skill by taking daily online-listening training.
I'm bad at waking up early. My usual activity time is 10:00 to 26:00.