Mobile Developer, Open-Source Enthusiast, Technical Writer.

I'm Petrus Nguyễn Thái Học (hoc081098), a senior Android, Flutter, and iOS developer based in Da Nang, Vietnam. I'm passionate about reactive programming, clean architecture, and building high-quality mobile apps — and I share what I learn through open-source contributions and technical writing on Medium.

A few snapshots from Hải Lăng, Quảng Trị — my hometown.

💠 Union Types in C#

Union types in C# 15 / .NET 11 Preview 2 — syntax, implicit conversions, pattern matching semantics, null checking, and common traps.

Looking at `Dp` class in Jetpack Compose

Why do @Composable functions in Jetpack Compose usually use `Dp.Unspecified` as default value? Why not use null? The optimization of Jetpack Compose under the hood.

Work Experience

  1. Company
    Full-time developer & Freelance / Open Source
    Role
    Senior Mobile Developer
    Date
  2. Company
    GoTECQ Vietnam, Ltd.
    Role
    Flutter Developer
    Date
Download CV