ABOUT / BACKGROUND

From understanding numbers and risk to designing clear, reliable software.

I began in finance and audit, where I learned to care about evidence, boundaries and anomalies. I now bring those habits into product design, implementation and software delivery.

FOCUS
Web products and full-stack engineering
BUILDING
React / Next.js · Go
BASE
China · UTC+8

01 / JOURNEY

Not a predetermined path, but a series of deliberate choices.

  1. 2017

    Finance training

    Studied public finance at Zhongnan University of Economics and Law, building a foundation in finance, economics and business analysis.

  2. 2020

    Audit and professional judgment

    Developed an evidence-driven approach to risk through financial audit work and completed all six professional-stage CPA examinations in China.

  3. 2021

    Moving into software engineering

    Started with C and Java, moved into the JavaScript ecosystem, and later expanded into Go and Node.js.

  4. NOW

    Building end-to-end capability

    I use real products to practise frontend experience, backend APIs, data modelling, realtime communication and deployment.

02 / CAPABILITIES

Capabilities I keep building

Not a wall of technology icons, but areas I have practised in real projects.

  1. 01

    Interface and product experience

    Build web and mobile interfaces with React, Next.js, TypeScript and React Native, with attention to information hierarchy, accessibility, rendering strategy and maintainability.

    • React
    • Next.js
    • TypeScript
    • React Native
    • Vue
  2. 02

    Services and data boundaries

    Design REST APIs and WebSocket flows with Go and Node.js, using PostgreSQL and MongoDB for domain modelling, queries and consistency.

    • Go
    • Node.js
    • PostgreSQL
    • MongoDB
    • REST
    • WebSocket
  3. 03

    Engineering delivery

    Treat types, error handling, tests, containers and reverse proxies as part of the product, carrying features from local code to a verifiable running system.

    • Testing
    • Docker
    • Caddy
    • Git

03 / PRINCIPLES

How I make engineering decisions

  1. 01

    Understand the problem before choosing technology

    Start with user goals, data flow and constraints instead of using a framework checklist as a substitute for design.

  2. 02

    Describe systems with evidence

    Validate conclusions through code, request paths and failure scenarios, and state incomplete boundaries honestly.

  3. 03

    Maintain experience and engineering quality together

    Treat interface feedback, API contracts, performance, security and operations as one delivery chain.

04 / CONTACT

If you care about building thoughtful products, let's talk.

nicolas.leigh@qq.com