KDJ / RESUME / CAREER
KDJ
A platform developer connecting geospatial information to public-sector workflows
01
Profile summary
I build systems that connect maps and spatial data to administrative and field work. Since 2024, I have worked on platform development for geospatial public systems and the Digital Land Information Technology Development Project at Jeongdo UIT.
- Platform development that connects data and operational screens for geospatial public systems
- AI-assisted development with Codex and Hermes agents, paired with code review, testing, and security validation
- Using Netlify and Supabase when appropriate, or operating services directly on a personal server computer
02
Technical skills
Core development stack
Spring Boot · Vite · Vue · Pinia · TypeScript
Data, infrastructure, and collaboration
PostgreSQL · Docker · GitHub · GitLab
Libraries used at work
OpenLayers · Apache POI · hwplib · Element Plus
Development and geospatial tools
QGIS · GeoServer · Postman · FileZilla · Xshell · DBeaver
Creative and other tools
Adobe Premiere Pro · Camtasia · AutoCAD · FL Studio
03
Experience summary
Jeongdo UIT Co., Ltd.
Geospatial Platform Development
Associate, Development Team 2, Platform Development Department, Platform Development Division
I develop both Vue 3, TypeScript, and OpenLayers frontends and Spring Boot, MyBatis, and PostgreSQL backends for geospatial public systems and national R&D, from Web GIS and administrative APIs to GeoDCAT/RDF, OGC services, and Kafka/GeoJSON integration.
04
Operated services
KDJ Archive
Multilingual personal portfolio and knowledge archive
Keep personal history, company work and projects, and services I operate or use easy to find in one archive.
Nuxt · Vue · Nuxt Content · Google Analytics 4
05
Education & training
2023.06.26 — 2023.11.30
Spatial Information Academy
Completed the Geospatial Application Software Expert Program · Jun. 26, 2023 — Nov. 30, 2023
2015.03 — 2023.02
University of Seoul
Credentials
2023.09.01
Engineer Surveying and Geospatial Information
Earned Sep. 1, 2023
2022.06.17
Engineer Cadastral
Earned Jun. 17, 2022
2022.06.03
Computer Specialist in Spreadsheet & Database, Level 1
Earned Jun. 3, 2022
CAREER / PROJECT RECORD
Career portfolio
Company roles and selected projects are described from publicly shareable records, focusing on problems, implementation scope, and technical contribution.
Jeongdo UIT Co., Ltd.
Geospatial Platform Development
Associate, Development Team 2, Platform Development Department, Platform Development Division
2024.01.02 — Present
I develop both Vue 3, TypeScript, and OpenLayers frontends and Spring Boot, MyBatis, and PostgreSQL backends for geospatial public systems and national R&D, from Web GIS and administrative APIs to GeoDCAT/RDF, OGC services, and Kafka/GeoJSON integration.
Responsibilities & contributions
- Developed the Vue and OpenLayers Web GIS, Spring Boot and MyBatis operational APIs, and HWP, Excel, and PDF output for the Small-Scale Public Facility Management System (Feb. 29, 2024–Feb. 28, 2025).
- Performed full-stack development and V&V for the Digital Land Information Technology Development Project (R&D) (Apr.–Oct. 2025), covering the Vue and OpenLayers catalog and map UI, Spring Boot and PostgreSQL/JSONB APIs, Jena RDF, and GeoTools and Kafka integration.
- Supported development work for a growth-management planning project and an internal system-integration project.
SELECTED / WORK
Selected projects
01
Digital Land Information Technology Development Project (R&D)
Jeongdo UIT · Core Area 3 Full-stack frontend/backend development and V&V/demonstration
I built catalog management, RDF-document, and WMS, WFS, OGC Map Tiles, and TOC interfaces with Vue 3, TypeScript, Pinia, and OpenLayers, plus the four-level catalog API with Java 17, Spring Boot 3.4, MyBatis, and PostgreSQL/JSONB. The implementation also covers Apache Jena GeoDCAT Turtle generation, GeoTools validation, Kafka-to-GeoJSON processing, and QGIS integration.
Technology
Vue 3 · TypeScript · Vite · Pinia · OpenLayers 8 · Element Plus · Java 17 · Spring Boot 3.4 · MyBatis · PostgreSQL/JSONB · Apache Jena · GeoTools · Kafka · GeoDCAT/RDF · WMS/OGC API · QGIS Plugin
Program context and participation period
Project records identify Jeongdo UIT as a participating company in the Hyperconnected Digital Land Information work from April through October 2025. According to the public notice from the Ministry of Land, Infrastructure and Transport and the Korea Agency for Infrastructure Technology Advancement, the full national R&D program runs from April 2022 through December 2026. It includes integrated use and operational validation of converged data, along with dynamic geospatial-information construction using fixed and mobile platforms. This card focuses on the implementation and verification scope in which Jeongdo UIT participated.
Core Area 3 scope
Public program material describes Core Area 3 as a framework for non-spatial-information linkage and integrated operational validation. Jeongdo UIT is identified as the implementing organization for the GeoDCAT-based data-catalog service-management technology, covering standards-based data-management modules, catalog and metadata functions, and management-program demonstration. This record covers only that verified implementation and validation scope; it does not claim sole delivery of the research project.
Core frontend development
- Separate search and management state plus list, detail, input, update, and pagination interfaces for catalogs, datasets, distributions, and data services, built with Vue 3, TypeScript, Vite, and Pinia
- Element Plus and Axios handling for metadata validation, multipart distribution-file uploads, file lists and downloads, and success, error, and loading states
- OpenLayers 8 layer creation for WMS, WFS, OGC Map Tiles, GeoJSON/GML, CityGML, and WebGL points, synchronized with extent movement, styles, visibility, and the TOC
- Search, highlighting, content and URL copy for GeoDCAT RDF/Turtle documents, plus service/file distribution branches and QGIS-plugin catalog exploration and layer-addition flows
Core backend development
- Java 17 and Spring Boot 3.4 Controller–Service APIs with MyBatis and PostgreSQL for CRUD, search, pagination, and relationships across catalogs, datasets, distributions, and data services
- PostgreSQL JSONB type handlers for spatial and temporal extents, conformance metadata, and map styles, plus multipart distribution files, downloads, and 2D GIS uploads
- Apache Jena assembly of DCAT, DCT, FOAF, and ADMS resources and relationships into UTF-8 text/turtle responses
- GeoTools GeoTIFF CRS checks, CityGML validation and tile-work linkage, Kafka-message normalization to GeoJSON with per-topic latest state, current-position APIs, QGIS-plugin repository integration, and integrated-testbed V&V support
Publicly described Core Area 3 framework
- Digital-land-information standards: interoperability models and management systems for converged data, plus automated and visible data-pipeline flows
- Non-spatial-information linkage: a use direction that assigns location and attributes to non-spatial information such as CAD/BIM, then maps it to digital land information
- Integrated testbed: a stable, scalable environment for experiment and validation of core-area results, with national spatial-platform API linkage as its basis
Core Area 3 operational flow
The catalog demonstration shows the path from catalog review and GeoDCAT metadata mapping to RDF/Turtle document confirmation. It presents WMS service distributions with both a map layer and an RDF document, while file distributions follow a document-and-download path. This is a standard-data discovery and presentation demo, not a claim that the browser itself performs RDF generation, indexing, or ETL.
Standard-linkage expressions verified in the demo
- GeoDCAT catalog: RDF (Turtle) metadata at catalog, data-service, dataset, and distribution levels
- Map and document: WMS service data is shown with a map overlay and RDF document, while file data is document-first
- Spatial-information linkage: OGC API Tiles, TileMatrixSet, OpenAPI, and Conformance information are reviewed in one screen
- 2D visualization: the demo presents collection, parsing, coordinate verification, and layer composition for CityGML- and GeoTIFF-family outputs through GeoJSON and OGC tiles
Implementation scope verified in the running screens
- Catalog and metadata: catalog and address tabs, keyword and OGC Tile conditions, and dataset/data-service detail discovery
- Service distribution: placing a service confirmed through the catalog on the map and checking its presentation state in the TOC
- RDF document: reviewing catalog, dataset, distribution, and data-service relationships in RDF/TTL for document-driven discovery
- QGIS use: loading an RDF/DCAT catalog URL, then reviewing the dataset/distribution tree and standard metadata before adding a layer
Installing GeoDCAT Connector from a custom repository
- Open Plugins → Manage and Install Plugins → Settings in QGIS and add a custom repository
- Give the repository a recognizable name and use the latest URL shown by the frontend instead of hard-coding it in this record
- Confirm that the repository is enabled, turn on the option to show experimental plugins, and search for GeoDCAT Connector under All
- Install the result, then verify the Installed tab, plugin menu, toolbar icon, and persistence after a QGIS restart
- Verified distribution source: QGIS 3.0 or later, plugin version 0.1.0, experimental release
GeoDCAT Connector workflow
- Load an RDF/DCAT URL returned as Turtle, RDF/XML, or JSON-LD and accumulate catalog, dataset, distribution, and data-service trees in the local database
- Narrow resources by title-and-description, title-only, or full-content search plus modified-date, resource-type, and file/link-data filters
- Review standard metadata such as title, description, publisher, downloadURL, and packageformat, then open a link or download a file as appropriate
- For spatial files, download and recursively unpack ZIP archives, add active formats such as SHP, DXF, and IMG to QGIS, and manage the save path, extensions, and extent movement in Options
- For data services, classify endpointURL with conformsTo/format metadata and connect WMS, WFS, or OGC API Tiles layers
- The current source defaults downloads and the local database to Documents\GeoDCAT_Connector; only some V-World downloads may require a login session
From requirements to operational functions
Core Area 3’s standard catalog, data pipeline, and map visualization provide a common context for discovering, distributing, and visualizing Core Area 1 position data, Core Area 2 tile-work outputs, and Core Area 4 dynamic spatial information. The linkage shown here explains the data flow from public material and running implementation; it does not expand into a claim that Jeongdo UIT solely implemented every core-area function.
Verification and disclosure boundary
Public program material presents integrated use and operational validation of converged data as part of the hyperconnected digital-land direction. Within that context, this record distinguishes Jeongdo UIT’s platform implementation, V&V, and demonstration participation. Research data, internal addresses, account information, non-public integration specifications, and unverified individual outcomes are excluded.
Public references
The program scope and participation context are based on the following public sources.
02
Small Public Facility Management System
Platform Development Team 2 · Full-stack development across frontend and backend
I developed Vue 3, TypeScript, and Pinia operational interfaces and an OpenLayers-based Web GIS, plus Java 8, Spring Boot, MyBatis, and PostgreSQL APIs for facilities, safety inspections, maintenance plans, construction, and compensation, including HWP, Excel, and PDF administrative-document generation.
Technology
Vue 3 · TypeScript · Vite · Pinia · OpenLayers 8 · Element Plus · ECharts · Spring Boot 2.7 · Spring Security/OAuth2 · MyBatis · PostgreSQL · Apache POI/HWP
Overview
This project brings the location, attributes, inspection, and maintenance information of small public facilities into connected map and workflow screens. The intended flow runs from understanding facility conditions to medium-term maintenance plans and construction progress.
Core frontend development
- Menu layouts, loading and selection state, and facility, inspection, maintenance-plan, construction, and compensation workflows built with Vue 3, TypeScript, Vite, and Pinia
- WMS/WFS layers, facility-geometry query and editing, zoom and area selection, road view, feature inspection, distance and area measurement, and profile analysis built with OpenLayers 8 and the in-house GIS module
- Split-map and swipe comparison plus layer trees, CQL filters, opacity, overview maps, and map-print state
- Element Plus input and validation interfaces, Axios API integration, ECharts dashboards, and HWP, Excel, and PDF download flows
Core backend development
- Controller–Service APIs on Java 8 and Spring Boot 2.7, with MyBatis and PostgreSQL persistence for facilities, inspections and risk, medium-term plans, construction, land loss, and compensation
- Transactional handling of facility geometry and attribute history, status changes, yearly volume and cost aggregation, dashboards, and composite compensation records
- Spring Security and OAuth2 authentication plus user, role, and access-history management, with KRAS, K-Geo, and MapStudio linkage
- Excel, HWP, and PDF template output using Apache POI, hwplib, and iText, including image insertion, document merging, and file upload and download APIs
Functions verified in the running screens
- Map navigation tools for overview, zoom, box zoom, view history, and full extent while reviewing an area
- Field-context lookup through road view and feature information for a selected location
- Distance and area measurement, profile analysis, and reset for spatial review
- Horizontal split, swipe comparison, and map settings for comparing and controlling layers
- Map print plus facility search and registration by map, address, type, and status
- Maintenance-plan specifications, priorities, yearly volume, and cost management
- Construction, land-loss, and compensation work screens
- Dashboards for facility, maintenance-plan, and risk-facility status
- Safety-inspection and risk-assessment report management in the resource library
Scope defined in the requirements
The defined scope covers users, roles, and access history; facility geometry and attribute history; spatial links such as cadastral and land-register data; safety inspection and risk designation; medium-term and implementation plans with form output; emergency, delegation, and civil-service work; and external-system and mobile use. Items requiring further agreement were tracked separately.
Contribution note
As a member of Development Team 2, I developed across the Vue administrative frontend, OpenLayers Web GIS, Spring Boot operational APIs, MyBatis data processing, and administrative-document generation. The technologies and functions are grounded in the supplied source while describing shared team delivery rather than claiming sole implementation.
03
Internal Integrated System Management
Platform Development Team 2 · Frontend and backend feature additions and maintenance for an existing internal system
This was my first assigned project after joining the company. I analyzed an existing React class-component and Java 8/Spring MVC codebase, then added organization and server management, installation schedules, user permissions, maps, and statistics while fixing operational issues.
Technology
React 17 · JavaScript · Ant Design · Axios · ECharts 5 · OpenLayers 6 · Java 8 · Spring MVC 4.3 · Spring Security/JWT · MyBatis · Oracle Database · Apache POI
Overview
This internal operations tool consolidates organization-level installation and operating information for multiple geospatial systems supported by the company. It connects organization and server details, installation schedules, license-related files, users and permissions, and common codes, while presenting nationwide installation status by region and system type.
Frontend feature expansion
- Connected organization list, detail, registration, and editing workflows with schedule, statistics, common-code, and user administration screens using React 17, React Router, and Ant Design
- Branched organization and server forms by system type and implemented server addition and removal, address lookup, validation, and license-file upload and download flows
- Built OpenLayers 6 distribution maps that place organization coordinates over regional boundaries with system-specific markers and selected-organization details
- Visualized installed and uninstalled status by region and system distribution with ECharts, adding system navigation and a collapsible statistics sidebar
- Improved responsive and mobile layouts, search-state persistence, permission-based menus and actions, plus Axios authentication and error handling
Backend feature expansion
- Implemented and refined APIs for organizations, server settings, users, common codes, schedules, statistics, and map data using a Java 8 and Spring MVC Controller–Service–DAO structure with MyBatis and Oracle
- Added transactional create, update, and delete flows that save each organization with either multiple servers or system-specific server settings, then assemble related data for detail views
- Added aggregation queries by region, installation status, and system type, plus organization-coordinate queries consumed by OpenLayers maps and ECharts statistics
- Connected Spring Security JWT authentication and BCrypt password handling to user approval, affiliation, and role-management workflows
- Integrated multi-file upload and download and Apache POI Excel output for organization and server information
Legacy React in my first assigned project
This was the first project assigned to me after I joined the company. Although the frontend used React 17, it was organized around class-component state, lifecycle methods, and this binding rather than functional components and Hooks. Tracing page-level state and repeated code in an unfamiliar style was difficult. Instead of attempting a full rewrite, I first learned the existing structure and operational impact, added the required changes in small increments, and consolidated some repetition. The experience taught me how to read legacy code, control the scope of change, and improve a live system safely.
Feature additions, maintenance, and contribution boundary
The Git history from January through October 2024 confirms work on adding system types, integrating organization and server administration, system and regional statistics, address search and mobile screens, user affiliation and roles, maps and charts for additional types, and server registration and deletion fixes. I was not the original designer or builder; this record covers only the feature additions and bug fixes I performed on the inherited codebase as a member of Development Team 2.
Verification and publication boundary
The functions and technologies are grounded in the supplied frontend and backend repositories and their commit history. I confirmed that the operating page responds over HTTP and that its deployed frontend bundle matches the supplied local build. Only one authenticated statistics screen is used as public evidence after identifying labels and detailed data were mosaicked; raw operational data, internal addresses, accounts, database values, license files, and non-public configuration are excluded.
OPERATED / SERVICE
Service operations
Services that I operate publicly or actively maintain are summarized by purpose, operating environment, main features, and technology.
KDJ Archive
Multilingual personal portfolio and knowledge archive
Instead of mixing unrelated records into one feed, the archive separates personal history, company projects, and service operations so they remain easy to revisit over time.
- Service type
- Multilingual personal portfolio and knowledge archive
- Hosting
- Home server · Nuxt/Nitro and Caddy
- Version
- beta
Main features
- Personal history, company experience, projects, and operated, personal, and planned services use distinct information structures.
- Korean, English, Spanish, and Japanese pages preserve the same facts and URL structure.
- The site provides canonical and hreflang links, JSON-LD, sitemap.xml, llms.txt, and request-based Markdown responses.
- Contact requests must come from the same origin, are stored in SQLite, and are delivered to a private operator email.
Technology
Nuxt · Vue · Nuxt Content · Google Analytics 4