Skip to content

Open to backend roles · Singapore

Cao Qin

Backend Engineer — Java, Spring & reliable systems

Three years across Java and Spring services, AWS-integrated public-sector systems, production applications and an independently shipped product. Most of what I build comes down to the same thing: data flows that survive partial failure — bounded retries, failure isolation, duplicate protection and contracts that hold across systems I don’t control.

Location
Singapore
Work status
PR · no sponsorship
Primary stack
Java / Spring
Also
Python, TypeScript, Swift
Cloud
AWS (EC2, S3, CloudWatch)
Education
NUS MComp ’26NUS BComp ’23
Availability
Immediate

7

government systems sharing standardized data contracts

1M+

MAU on a product I contributed to

3 yrs

software engineering experience

3

iOS products shipped solo to the App Store

Experience

Where I’ve worked

  1. NCS Group

    Software Engineer · Java / Spring

    • Built Java and Spring services on AWS for national e-services, using MyBatis and Oracle behind REST APIs and nightly batch workflows, under reliability, security and data-governance requirements.
    • Owned a nightly ingestion pipeline end to end: integrated an external HTTP API with JWT token-expiry handling, split retrieval into failure-isolated chunks, and applied bounded exponential-backoff retries.
    • Protected Oracle persistence from duplicate writes through pre-insert reconciliation and a composite key, then calculated and surfaced risk indicators for the user-facing application.
    • Generated convention-based CSV outputs in S3, implemented copy-then-delete archival after a successful SFTP upload, and standardized data-exchange contracts across seven government systems.
    • Worked with product owners and non-technical stakeholders to turn regulatory and operational needs into reliable services, balancing correctness, maintainability and delivery timelines.
    • Java
    • Spring
    • AWS
    • Oracle
    • MyBatis
    • REST
    • JWT
    • S3
    • SFTP
    • Batch

    Jul 2023 — Jan 2025

  2. Notewise

    Software Engineer · Android / Java, iOS / Swift

    • Core contributor on a small team building a cross-platform note-taking product now serving over one million monthly users, delivering production features on both Android/Java and iOS/Swift.
    • Owned a synchronized editing experience end to end, resolving state, geometry, view transforms and rendering issues under interactive performance constraints.
    • Built reusable interaction and direct in-canvas text-editing models, partnering with design and product to turn nuanced requirements into maintainable production behavior.
    • Java
    • Android
    • Swift
    • iOS

    Feb 2025 — Jan 2026

  3. NCS Group

    Software Engineer Intern · Python / Flask

    • Developed Python and Flask backend services integrating a Microsoft Azure OCR service to validate documents and extract structured data for downstream processing.
    • Built Python/Selenium tools for internal workflows, Excel VBA spreadsheet automation, and Windows batch and shell scripts for automated testing.
    • Python
    • Flask
    • Azure
    • Selenium

    Jan 2022 — Jun 2022

Stack

What I work with

Languages
Java, Python, JavaScript/TypeScript, Swift
Backend & data
Spring, MyBatis, REST/HTTP APIs, JWT, Flask, Oracle, Postgres, SQL, batch processing
Cloud & reliability
AWS (EC2, S3, CloudWatch), SFTP, retries, idempotency, CI/CD, production debugging
Engineering
System design, distributed-systems foundations, testing, cross-functional delivery

Selected work

PourNote

Independent product engineer · 2026 – present

I took a local-first SwiftUI iOS product from definition through implementation, App Store release, subscriptions, analytics, localization and iteration — alone. Keeping data on the device was a deliberate trade-off: it gave up cross-device sync and server-side recovery in exchange for privacy and a very small operational surface for a solo project.

The server-side piece is a TypeScript Supabase Edge Function handling in-app feedback, with JSON request validation, Postgres-backed server-side rate limiting and Resend email integration. First released 13 May 2026; around 200 monthly active users and a first paying customer by September 2026.

  • Swift
  • SwiftUI
  • TypeScript
  • Supabase
  • Edge Functions
  • Postgres
  • RevenueCat
  • Firebase
PourNote on the App Store
PourNote’s home screen, showing the most recently logged drink and the week so far.PourNote’s taste profile screen, showing a derived taste type and a taste map.

Also on the App Store

  • Triday To-Do

    Yesterday · Today · Tomorrow

    A minimal task list built around three days at a time, so planning stays a short horizon rather than an ever-growing backlog.

  • Aftertap

    Everything happens 0.3s late

    A timing game where every input lands 0.3 seconds behind, so you aim where the target will be instead of where it is.

About

A bit about me

I’m a backend-focused software engineer based in Singapore. I completed a Master of Computing in Computer Science at NUS in June 2026, after a Bachelor of Computing with Honours there in June 2023, focusing on artificial intelligence, networking and distributed systems.

Most of my production work has been server-side: Java and Spring services on AWS, integrating with systems I don’t control, under requirements I can’t negotiate away. That kind of work rewards being careful about failure modes and being clear with the people who depend on the thing.

The mobile and product work is the other half of the same instinct. I like following a feature from a rough problem all the way to something running in people’s hands, then sharpening it based on what actually happens.

Contact

Get in touch

Email is the best way to reach me. I’m based in Singapore, hold permanent residency, and can start immediately.

LinkedIn
in/qin-cao
Résumé
Download PDF