Hi, I'm

Junseok Oh

Full-Stack Developer

From UI to APIs and Permissions

I turn generative AI into products people can use at work. From UI to APIs, permissions, Agents, data, testing, deployment, and operations.

OSSCA 2025 Excellence Award (Ministerial Prize)Open Source Developer Contest WinnerEngineer, Information ProcessingOPIc IH

Service scale

10,000

AI platform development for ~10,000 people across 13 affiliates

Metering query

750×

Query time 1,970ms → 2.6ms · 3M-record reproduction

Awards

Ministerial Prize

Ministry of Science and ICT · Githru

Commercial service

2,000 users

COMAtching · ₩8M revenue

01 — Representative Experience

From AI features to working products

AI Atlas → Agent safety → Enterprise integration → AI-assisted development. Expanding ownership from user interfaces to product safety and operations.

About

I am an Full-Stack Developer turning generative AI into products people can use at work. On an internal LLM platform for approximately 10,000 people across 13 affiliates, I expanded my scope from frontend development to metering, usage limits, permissions, sharing APIs, data aggregation, testing, deployment, and operations.

I developed an enterprise Agent safety-validation platform and a production-reporting Agent connecting an on-premise sLLM with MES MCP. I also apply AI to development, QA, documentation, and operations to improve recurring work and quality checks.

Enterprise AI · Hansol PNS AI Development Team

AI Atlas — Enterprise AI Platform for 10,000 Users

An internal LLM and RAG platform for approximately 10,000 people across 13 affiliates. I expanded my scope from AI UX to selected APIs, permissions, metering, files, testing, deployment, and operations.

Platform scale
~10,000 users · 13 affiliates
First release
Within six months of joining
Built and released with the team

I owned the frontend and implemented selected backend APIs and permission logic, integrating them with shared metering infrastructure.

  • React
  • TypeScript
  • Python / FastAPI
  • Go
  • Kafka
  • Redis
  • MongoDB
  • Docker
Implementation scope & decisions

From user interfaces to operations

  • Frontend — Chat, Agent, Generative UI, WebSocket, admin back office, file previews, and user-facing visualization of RAG processing and chunking/embedding status. Also developed a VOC Agent that creates Jira tickets from Generative UI forms.
  • Backend / API — Python/FastAPI and Go experience covering metering queries, usage limits, resource permissions, and sharing APIs. Go Gateway ownership is limited to the features I directly implemented.
  • Enterprise — Multi-organization RBAC boundaries for read / execute / write / share, Agent sharing approval, revocation, and execution reauthorization.
  • Data / Operation — Query APIs integrated with shared metering ingestion, daily aggregation, and price/FX infrastructure; Docker, testing, deployment, Smoke Tests, and operational automation.

Within six months of joining, I worked with the team on the first release for approximately 10,000 people across 13 affiliates. This does not imply ownership of the entire platform or shared infrastructure. RAG work means UX and integration for processing status, not development of chunking algorithms, embedding models, or a Vector DB.

Technical evidence retained

Separate case studies retain implementation, verification, and limitations for usage/cost metering, multi-organization Agent sharing, in-app file previews, Generative UI JSON recovery, WebSocket reliability, and Docker image optimization.

Explore the eight technical case studies

Agent Safety · Hansol Group AX Project

신호등 에이전트 — Enterprise AI Agent Safety Validation

A full-stack validation platform that analyzes permissions, sensitive information, approval procedures, and prompt-injection risks before an enterprise Agent is used at work, assigning green, yellow, or red outcomes.

Task-specific quality presets
4
Evaluation coverage
10 core risk scenarios
8 attack personas · 5 defense personas

Deterministic rules—not the LLM—make the final traffic-light classification.

  • React
  • TypeScript
  • TanStack Query
  • Node.js
  • Clean Architecture
  • AI Agent
  • Human-in-the-loop
  • JSON / PDF Report
Implementation scope & decisions

From inspection requests to reports and history

  • Frontend — React, TypeScript, and TanStack Query for inspection creation, file/repository input, progress, traffic-light outcomes, Risk Graph, improvement recommendations, and history.
  • Backend — Node.js, TypeScript, and Clean Architecture connecting file/ZIP inputs, inspection of public GitHub/GitLab repositories, asynchronous inspection state, results/history APIs, and JSON/PDF reports.
  • Evaluation — Four task-specific quality presets, eight attack personas, five defense personas, and ten core risk scenarios.

Separate deterministic decisions from LLM exploration

The LLM is restricted to extending risk scenarios that ordinary tests may miss. External models receive only minimized, de-identified information, not the complete original inputs.

Human approval, sensitive-data masking, audit logs, duplicate-execution prevention, untrusted-input isolation, and output-path restrictions are product controls. Safety, permissions, auditability, and reproducibility matter alongside Agent performance.

This was development work in a Hansol Group AX project. Validation results are limited to the defined inspection scope, not a guarantee that every risk will be detected.

Enterprise Integration · Manufacturing AX

SLP Manufacturing AX — On-Prem sLLM × MES MCP Reporting Agent

An Agent connecting an on-premise sLLM to MES through MCP to query and compare production data and generate reports in an enterprise environment with restricted external SaaS use.

Query scope
Production · Quality · Equipment · LOT
Output
Summary + HTML Report

The Agent selects purpose-defined, read-only MCP query tools.

  1. Natural-language request
  2. On-Prem sLLM
  3. Select MES MCP tool
  4. Production / Quality / Equipment / LOT queries
  5. Current vs previous equivalent period
  6. Follow up on unusual changes
  7. Summarize key findings
  8. On-screen response + HTML report
  • On-Premise sLLM
  • MCP
  • MES
  • MS-SQL
  • AI Agent
  • HTML Report
Implementation scope & decisions

Apply a model to an enterprise system

The Agent interprets the request and selects purpose-defined MCP tools. It queries production, quality/defects, equipment, and LOT history; compares the current period with the previous equivalent period; and queries additional data for unusual changes before producing a summary and HTML report.

This is experience applying an on-premise model to an Agent and MCP—not training or building the model, or developing the entire MES.

Separate observed facts from interpretations

  • Restrict numerical claims to MCP query results.
  • Separate observed facts from possible causes and bound query ranges.
  • Verify MCP tool error retries and defenses against requests to fabricate production figures.
  • Distinguish model, prompt, MCP, and infrastructure failures during diagnosis.
  • Include normal requests, out-of-scope queries, fabricated-data requests, and infrastructure failures in normal, exceptional, and adversarial QA.

Development System · Engineering, QA, Documentation & Operations

AI-assisted development — loop & harness engineering

Connected implementation, tests, browser QA, review, deployment, and smoke checks. Reusable procedures define inputs and success criteria, while failures feed the next iteration.

Weekly report
2–3 hours → under 10 min

AI code generation is not the endpoint. Failure causes feed back into prompts, tests, and validation rules.

  • Jira
  • Jest
  • Go Test
  • Playwright
  • GitLab MR
  • CI/CD
  • AI Skill
Implementation scope & decisions

Loop engineering connects implementation to testing, review, deployment, and observed failures. Harness engineering gives AI tasks explicit inputs, tool procedures, completion criteria, and verification rules. AI output is checked through actual code and screens.

The five practices below cover development quality, weekly reports, guide/web-document linking, screen-design/test-case support, and Excel processing. Reporting time refers to the recorded generation and validation task, not overall productivity.

Explore five AI and automation practices

02 — Career

Career

Hansol PNS IT

Oct 2025 — Present

Full-Stack · Frontend Owner

AI platform development for ~10,000 people across 13 affiliates · Frontend ownership, selected APIs and metering · Agent safety and manufacturing AX

PTKOREA · Pengtai Greater China

Jun 23, 2025 — Oct 1, 2025

Full-Stack Intern

Samsung global-site QA automation · 96-country validation · Initial loading time reduced by 65%

  1. Hansol PNS IT · AI Development Team — Full-Stack · Frontend Owner

    Oct 2025 — Present · On-Premise

    Frontend owner of AI Atlas, an internal LLM service for 13 Hansol Group affiliates and approximately 10,000 eligible people.

    Within six months of joining, I worked with the team on the first release for approximately 10,000 people across 13 affiliates. Without a product manager or designer, I built user-facing visualizations of RAG processing and chunking/embedding status, and published a Smart Tooltip module to npm. This is not development of RAG algorithms or embedding models.

    I directly built the frontend, selected Go Gateway features (metering queries, comparison, usage limits, cross-org sharing, file previews), and integrated these contracts with shared Kafka ingestion, daily aggregation, and price/FX infrastructure.

    • 신호등 에이전트 — Enterprise Agent safety validation in a Hansol Group AX project, separating rule-based final decisions from LLM scenario expansion.
    • SLP Manufacturing AX — Read-only production-reporting Agent connecting an on-premise sLLM with MES MCP.
    • AI-assisted development system — Development/validation/deployment loop, loop and harness engineering, documentation/test-case support, and weekly-report automation.

    Actual internal service UI, data, and source code are not public. This portfolio reconstructs technical structures, ownership, and reproducible measurements in accordance with company security policies.

    AI Atlas · Operations & Admin (Back-Office)

    Operations & Admin — Usage and Cost Metering

    I built query/comparison APIs, usage limits, query hooks, and browser-side ExcelJS exports for dashboard requirements, integrating them with shared Kafka ingestion, daily aggregation, and price/FX infrastructure. The source_usages array contract automatically carries new services into filters, colors, charts, and Excel.

    AI Atlas · Expand project overview

    AI Atlas — Internal LLM Service for 13 Affiliates and ~10,000 Eligible People

    From user problems to launch

    Within six months of joining, I worked with the team on the first release for approximately 10,000 people across 13 affiliates. Without a product manager or designer, I defined user problems, owned the frontend, and implemented selected Go Gateway query/quota/sharing/preview features and integrated them with the shared metering infrastructure.

    AI / LLM product development

    • Generative UI JSON recovery and widget isolation
    • Streaming markdown parsing and WebSocket client defenses
    • User-facing visualization of RAG processing and chunking/embedding status—not development of algorithms, models, or a Vector DB
    • Cross-organization Agent approval, execution, and revocation
    • In-app file previews and isolated serving of DRM-processed copies

    Public scope

    Actual internal UI, data, and source code are not public. The case studies reconstruct technical structures and ownership, clearly separating local validation from production results.

  2. PTKOREA (Pengtai Greater China) — Full-Stack Internship

    Jun 23, 2025 — Oct 1, 2025 · Global-site QA automation

    TypeScript Django React Zustand Python AEM Jira

    • Automated DNT (Do Not Translate) checks for brand names such as SAMSUNG/AI across 96 countries.
    • Reduced initial loading time by 65% (3.7s → 1.3s) by replacing full-data requests with page-level requests.
    • Saved 10+ hours of manual work per month through DNT validation and automated Excel reports.
    • Built an Electron-based internal Windows app for a restricted network and maintained AEM components across 96 countries.

Education · Certifications

  • The Catholic University of Korea — Computer Science and Information Engineering, Mar 2020 — Feb 2026 · GPA 4.05 / 4.5
  • Gwangmyeongbuk High School — Mar 2017 — Feb 2020
  • OPIc IH (2025.08.28) · Engineer, Information Processing (2025.09.12) · Computer Utilization Level 2 (2021.04.09) · Class 1 ordinary driver's license (2023.12.04)
  • International student support (Mar 2023 — Jun 2025): English dormitory support and Excel administration

Clubs · Activities

  • COMA (executive member) — University IT club · Mar 2023 — Mar 2026
  • COMATCHING (team lead) — IT startup club · Sep 2023 — Aug 2025
  • GDG CUK (executive member) — Google Developer Group · Aug 2024 — Mar 2025
  • UMC — Node.js track · Aug 2023 — Dec 2023

Awards

  1. Academic Honors Award — The Catholic University of Korea · 2026.02.11
  2. Open Source Developer Contest — Outstanding Project — Favus · 2025.12.21
  3. Open Source Contribution Academy — Excellence Award / Ministerial Prize — Ministry of Science and ICT · Githru · 2025.12.05
  4. Programming Contest — Silver Prize — The Catholic University of Korea · 2024.10.26
  5. GGUM Hackathon — Excellence Award — Classroom/library-seat visualization · 2024.10.21

03 — Architecture

From the screen to the pipeline — my exact scope

What I built directly vs. what I understood and integrated with, clearly separated. Select a node to jump to the related deep dive.

Built directlyUnderstood & integrated

CLIENT

React 19 · Next.js 15 · TypeScript

API CONTRACTS

APIs derived from UI requirements

GO GATEWAY

Feature ownership vs. shared infrastructure

METERING PIPELINE

Integration with shared ingestion, aggregation, and billing

DATA & OBJECTS

Implemented data paths & storage integration

RUNTIME / INFRA

Docker · K8s · On-Premise

Metering query & comparisonBuilt directly

Six filters · ~34→1 comparison requests · source_usages contract

Coverage Map — ownership by layer

Layer
Built directly
Understood & integrated
UI
Back-office dashboard·query hooks·ExcelJSOrganization-scoped sharingThree-layer file rendererGenerative UIWebSocket defensesStreaming markdown parserRAG processing·chunking·embedding status visualization
RAG processing pipeline integration
API / Server contracts
Metering queries·comparisonUsage limitsCross-org approval·execution authorization·revocationFile preview endpoint
Shared gRPC·Protobuf Gateway infrastructure
AI / Agent
Safety inspection·result UI·async APIsDeterministic risk classificationRead-only MES MCP queries·period comparisons·HTML reports
On-premise sLLM applicationMES·MS-SQL integration
Data / Pipeline
Query contracts·chat-list projection and indexesSharing Outbox convergenceCOMAtching MySQL schema·joins·indexes
Kafka ingestion·daily aggregation·price/FX history integrationParsing-engine PDF generation
Test / Infra
Docker multi-stage·standaloneNon-root APM permissionsJest·Go Test·PlaywrightDeployment·Smoke tests
Kubernetes·operations collaborationShared auth·storage environment

Tech Stack

  • AI / Agent: LLM Application · Generative UI · MCP · AI Agent · RAG Integration · LLM Streaming · Markdown Parser
  • Frontend: React 19 · Next.js 15 · TypeScript (strict) · Tailwind v4
  • State / RT: Zustand · Recoil · TanStack Query · WebSocket / STOMP · EventBus
  • Backend: Go / Gin · Python / FastAPI · Node.js · Java / Spring Boot · gRPC · Protobuf
  • Data / Infra: MySQL · MongoDB · Redis · Kafka · MinIO · Docker Multi-stage
  • Test / Automation: Jest · Go Test · Playwright · CI/CD · Smoke Test
  • Experience environment: Keycloak · Kubernetes — integration and collaboration with shared authentication and infrastructure, not ownership of the entire architecture.

Strengths

  • Leadership — Team lead three times: COMAtching, Favus, and an in-house CoP
  • Product delivery — AI platform development for ~10,000 people across 13 affiliates; first release with the team within six months of joining
  • Quantified impact — Query time 1,970ms → 2.6ms · Render commits 99.6%↓ · Docker 3.63GB → 1.82GB
  • Safety and operations — Permissions, approvals, auditability, and normal/exceptional/adversarial QA
  • Continuous contribution — Open-source contributions and VS Code Extension development

04 — Deep Dives

8 core case studies — implementation & verification

Read each case as architecture → problem/goal → actions → results, with implementation scope and measurement conditions.

Internal service UI, data, and source code are not public. Technical structures, ownership, and reproducible measurements have been reconstructed under company security policies.

05 — AI-Native Development Workflow

AI in the product and in the way I build it

Reusable procedures for development, QA, documentation, and operations. Evidence from failures becomes input for the next task.

Code and deterministic rules settle reproducible decisions. AI supports analysis and explanations that people can verify.

01 · AI & automation

Development quality · loop & harness engineering

Used AI for analysis, implementation, and test authoring, then checked actual screens, reviews, and deployments. Reusable procedures fix inputs, completion criteria, and verification rules; failures feed the next iteration.

Completion is checked with tests, actual screens, reviews, and deployment evidence.

  1. Requirement
  2. State Modeling
  3. Implementation
  4. Unit Test
  5. Browser Validation
  6. MR
  7. Deploy
  8. Smoke Test
  9. Feedback Loop
Implementation scope & decisions

Loop engineering connects implementation, verification, observed failure, and revision. Harness engineering provides the inputs, tools, completion criteria, and checking procedures for AI-assisted work.

After defining states and impact, I used AI for implementation and test authoring, then checked unit tests, screen QA, GitLab MR, deployment pipelines, and smoke behavior. Failures became regression tests and updated checking rules. This does not claim every stage runs automatically for every task.

02 · AI & automation

Weekly-report automation

Validated periods, totals, and metric continuity in code before AI drafted the report. Separating calculations from explanations reduced the recorded generation and validation time.

Weekly report
~2–3 hours → under 10 min
Generation and validation

AI does not calculate the numbers. Code handles collection, aggregation, periods, and totals.

  1. REST API
  2. Normalize
  3. Period / Total Validation
  4. Chart
  5. AI Explanation
  6. Review
Implementation scope & decisions

Collected DAU, tokens, top Agents, and model usage from APIs, then checked periods, totals, and week-to-week continuity. AI explained verified changes and unusual items; a person reviewed the final report.

Recorded generation and validation for one weekly report went from approximately 2–3 hours to under 10 minutes. This applies to that task, not every operational activity.

03 · AI & automation

Guides and scenarios linked to web documentation

Used AI to assist real-screen capture, annotations, and Confluence guides, then moved them to AX Campus web documentation with connected contents, internal links, indexes, and image references.

Guides / screen images
5 / 93
Separate video-production task
~3 days → 4 hours

Check descriptions and image references against actual screens.

  1. Screen Capture
  2. Annotation
  3. Confluence Guide
  4. Scenario Contents
  5. Web Document
  6. Reference Check
Implementation scope & decisions

Captured real screens, added annotations/descriptions, and reused them in guides. During the AX Campus migration, I connected scenario contents, internal links, indexes, and image references.

Five guides and 93 actual screen images describe output scale. A separate usage-video task went from ~3 days → 4 hours; this is not a measured saving for the web-document migration alone.

04 · AI & automation

AI-assisted screen specifications & test cases

Used AI to organize screen IDs, descriptions, and images for HWP specifications. After drafting test cases, I executed tests and checked duplication, omissions, screen consistency, and final wording.

Document generation is followed by real test execution and screen-consistency checks.

  1. Screen ID
  2. Description / Image
  3. HWP Assembly
  4. Test Case
  5. Execution
  6. Review
Implementation scope & decisions

Connected screen IDs, descriptions, and images to support semi-automated HWP assembly. Reviewed document order, duplicates, and omissions, then used AI for test-case drafting and executed actual functions.

Completed the screen specification and final HWP while checking screen consistency and wording personally. Authoring assistance is separate from execution; this does not claim full test automation.

05 · AI & automation

Excel processing and analysis support

Handled recurring Excel checks, cleanup, and reporting in code, using AI to assist processing logic and explanations. I reviewed output values, omissions, and formatting directly.

Distinguish AI assistance from code automation and compare source/output values and omissions.

  1. Source Data
  2. Processing Code
  3. Excel Output
  4. Value / Omission Check
  5. Review
Implementation scope & decisions

Used AI to assist code and explanation authoring for recurring Excel processing, validation, and reports. Actual calculations and outputs run in code; I checked values, omissions, columns, and formatting.

This scope draws on PTKOREA DNT validation/Excel reporting and internal administrative tasks. No additional unsupported time-saving rate or autonomous-analysis outcome is claimed.

06 — Product & Open Source

Product operations and open-source contributions

COMAtching v1 ~ v4 (Team Lead) — Product Development & Operations

Jun 2023 — May 2025 · ~2 years · ~2,000 cumulative users · ~₩8M revenue

Java / Spring Boot React Recoil SockJS/STOMP Node.js MySQL Docker/Jenkins

  • Built and operated the product with the team, improving v1–v4 with user feedback and performance data. Led the frontend and handled MySQL schema/joins/indexes, selected backend matching logic, and operations/deployment.
  • Matching-query optimization — Addressed a requirement involving ~50,000 candidates. A 5,000-person sample with SQL score calculation reduced DB queries 601 → 2 and SQL time 261.1ms → 18.8ms. This is sample SQL timing, not end-to-end service latency.
  • Toss Payments SDK with Idempotency-Key-based duplicate-payment prevention, and Docker/Jenkins CI/CD setup.

Githru (VSCode Extension) — Contributor

2025.06 — 2025.12 · 🏆 2025 Open Source Contribution Academy Excellence Award — Ministerial Prize, Ministry of Science and ICT

TypeScript React Zustand D3.js Tailwind

  • Rendering performance PR (#812) for the TemporalFilter component — optimized line-chart data processing, improving rendering performance by 18.9% and reducing variance by 93%
  • Eliminated unnecessary recomputation in D3.js chart components, improving performance on large commit datasets

Favus — S3 Multipart Upload Tool (Team Lead)

2025.06 — 2025.09 · 🏆 2025 Open Source Developer Contest Winner — Professional Division

Go CLI React Next.js Python WebSocket AWS S3

  • Go-based parallel chunking + state persistence mechanism — automatic resume after network interruptions, cutting large-file transfer failure rates by 90%
  • Three-tier WebSocket monitoring (CLI → Python Server → React UI) — real-time visualization of upload progress and per-part status

Bucheon FC | AI Fan-Matching — Corporate Collaboration Project

2024.09 — 2024.10 · Deployed live at the Bucheon FC stadium · 700 participants

React Recoil jsQR Chart.js

  • Screen planning and sole frontend development — designed the full user flow from QR entry verification → personality analysis → matching
  • AI-based personality analysis — visualized six supporter types with Chart.js radar charts