diff --git a/public/coop_resume.pdf b/public/coop_resume.pdf index a4b0f6e..4c16e3e 100644 Binary files a/public/coop_resume.pdf and b/public/coop_resume.pdf differ diff --git a/public/data/about-me.json b/public/data/about-me.json index 23bd771..727f333 100644 --- a/public/data/about-me.json +++ b/public/data/about-me.json @@ -1,25 +1,27 @@ { "phrases": [ - "Software Developer", - "Web Developer", - "Frontend Developer", - "Backend Developer", + "Cloud Ops Database Engineer", + "Database Engineer", + "DevOps Engineer", + "Software Engineer", "Full Stack Developer", - "UBC Student", + "Infrastructure Engineer", "Former OSU Student", "International Student from China", "Computer Science Student", "Statistics Student", - "Data Science Enthusiast", - "Machine Learning Enthusiast", - "Computer Graphics Enthusiast", - "Amateur Photographer", - "Open Source Contributor", + "Cloud Infrastructure Specialist", + "Kubernetes Enthusiast", + "Database Administration Specialist", + "Terraform Practitioner", + "AWS Solutions User", + "Automation Enthusiast", "Problem Solver", "Lifelong Learner", - "PLAI co-op intern", - "Former TA at UBC", - "DevOps Enthusiast", + "Former PLAI Research Engineer", + "Former UBC TA", + "Open Source Contributor", + "Amateur Photographer", "Violin Player", "Aviation Fan", "Manga Reader", @@ -31,10 +33,10 @@ "Total War Player" ], "paragraphs": [ - "I'm currently at my third year pursuing a combined major in Computer Science and Statistics at UBC. My academic journey and personal projects reflect my passion for problem-solving, innovation, and continuous learning.", - "I am interested in areas like machine learning, full-stack web development, DevOps and server management, computer graphics, database design and maintenance, and software engineering. I have had personal or work experiences in many of these areas, and am always eager to learn more.", - "I have a strong foundation in programming languages such as TypeScript, Java, Python, and C++, and I am proficient in various frameworks and tools like React, Node.js, Express.js, Docker, and SQL databases. I also have experience with cloud platforms like AWS.", - "My major, as a combination of computer programming and math/statistical analysis, has equipped me with a solid foundation in both theoretical and practical aspects of computer science and statistics. I have developed a keen interest in data analysis, machine learning, and statistical modeling, and I am excited to apply these skills in real-world applications.", - "I'm always eager to explore new technologies and take on challenging projects that allow me to grow as a developer, and, as a better person. Contact me if you want to know more or collaborate on a project!" + "I'm a Computer Science and Statistics student at UBC, currently on co-op as a Cloud Ops Database Engineer at Samsung R&D Canada. I'm passionate about technology, problem-solving, and continuous learning.", + "At Samsung, I work on cloud infrastructure and database operations, building tools for account management and implementing Kubernetes and Terraform solutions. I also enjoy contributing to research projects at UBC's PLAI lab, where I develop Minecraft plugins and AI agent frameworks.", + "I have experience with various technologies including Kubernetes, Docker, AWS, Python, TypeScript, and Java. I've worked with databases like MySQL, PostgreSQL, and MongoDB, and I enjoy automating workflows and building monitoring solutions.", + "Beyond coding, I'm an amateur photographer, violin player, and aviation enthusiast. I love playing Minecraft (and have developed mods & plugins for it!), reading manga, and spending time with my cat. I also enjoy strategy games like War Thunder and Total War.", + "I'm always eager to explore new technologies and collaborate on interesting projects. Feel free to reach out if you'd like to connect!" ] } diff --git a/public/data/work-experiences.json b/public/data/work-experiences.json index 6717792..0d3c825 100644 --- a/public/data/work-experiences.json +++ b/public/data/work-experiences.json @@ -1,11 +1,79 @@ { "workExperiences": [ + { + "jobTitle": "Cloud Ops Database Engineer", + "company": "Samsung R&D Canada", + "companyShortName": "Samsung R&D Canada", + "startDate": "Sep 2025", + "endDate": "Present", + "descriptions": [ + { + "shortDesc": "Built a centralized User Account Management tool with enterprise-grade controls for 2000+ database accounts.", + "longDesc": [ + "Developed a centralized User Account Management (UAM) tool to unify prod and non-prod account management for 2000+ accounts across all project databases with an intuitive UI, implementing automated password rotation, account expiration, safe credential delivery via corporate email, and ticket-attached audit logging for compliance." + ] + }, + { + "shortDesc": "Orchestrated Kubernetes delivery for UAM and secured multi-account database connectivity with Terraform IaC.", + "longDesc": [ + "Orchestrated the UAM application deployment on Kubernetes with Argo CD and AWS EKS, architecting network routings, VPC peerings, IAM policies, and Security Groups using Terraform to securely connect to 100+ MySQL, Postgres, Redshift, and MongoDB databases across 20+ VPCs in 5 AWS accounts and 3 regions." + ] + }, + { + "shortDesc": "Automated observability migration to Grafana by standardizing Alloy agent rollout via Ansible.", + "longDesc": [ + "Supported the migration from Datadog to self-hosted Grafana by automating the configuration and deployment of Alloy agents across 70+ MongoDB EC2 instances with Ansible, ensuring consistent metrics, traces, and log shipping." + ] + }, + { + "shortDesc": "Built MongoDB index usage collection and visualization to guide DBA tuning decisions.", + "longDesc": [ + "Performed index usage statistics collection by developing a cron script and a dashboard to automatically collect, aggregate, and visualize MongoDB index usage across all replica sets, enabling senior DBAs to analyze and optimize index performance." + ] + }, + { + "shortDesc": "Designing Grafana dashboards for RDS, Redshift, and MongoDB to improve real-time visibility and alerting.", + "longDesc": [ + "Designing and building custom Grafana dashboards to monitor RDS, Redshift, and MongoDB status, improving real-time visibility into database and OS health and enabling timely alerting." + ] + } + ], + "location": "Vancouver, British Columbia, Canada" + }, + { + "jobTitle": "Software Engineer - Infrastructure & Custom Development", + "company": "UBC Pacific Laboratory for Artificial Intelligence", + "companyShortName": "PLAI", + "startDate": "May 2025", + "endDate": "Aug 2025", + "descriptions": [ + { + "shortDesc": "Upgraded legacy Minecraft plugins/mods to 1.21 with robust connection lifecycle handling for data collection.", + "longDesc": [ + "Upgraded and enhanced legacy Java plugins and mods from Minecraft 1.19 to 1.21, improving connection and termination logic based on client states to ensure stable and reliable behavioral data collection." + ] + }, + { + "shortDesc": "Built an Agent Companion Framework enabling safe, private AI character interactions on the game server.", + "longDesc": [ + "Architected the Agent Companion Framework to integrate AI characters into the game server, featuring a custom session queue and specialized command interface for private, uninterrupted agent communication, with deterministic guardrails to prevent unsafe actions such as violence or property destruction." + ] + }, + { + "shortDesc": "Enhanced PLAITime backend with transcription batching, real-time validation, and incentive mechanisms.", + "longDesc": [ + "Contributed to the PLAITime mechanism backend by integrating a transcription model to batch-process player voice transcripts with audio context, implementing real-time validation using Lambda functions and UDP sockets, and designing an incentive mechanism that dynamically awards playing time for high-value interactions while limiting low-quality sessions." + ] + } + ], + "location": "Vancouver, British Columbia, Canada" + }, { "jobTitle": "Teaching Assistant", "company": "The University of British Columbia", "companyShortName": "UBC", "startDate": "Jan 2025", - "endDate": "Present", + "endDate": "Aug 2025", "descriptions": [ { "shortDesc": "Guided students through database design concepts and implementation in weekly lab sessions.", @@ -73,42 +141,6 @@ } ], "location": "Remote" - }, - { - "jobTitle": "Assistant AI Researcher", - "company": "UBC Pacific Laboratory for Artificial Intelligence", - "companyShortName": "PLAI", - "startDate": "May 2025", - "endDate": "Present", - "descriptions": [ - { - "shortDesc": "Contributing to cutting-edge embodied AI research through Minecraft environments.", - "longDesc": [ - "Contributing to cutting-edge embodied AI research at UBC's PLAI lab by maintaining the technical infrastructure that enables data collection through Minecraft environments." - ] - }, - { - "shortDesc": "Maintained and upgraded Minecraft server infrastructure for AI research.", - "longDesc": [ - "Maintained and upgraded the Minecraft server infrastructure for AI research data collection.", - "Optimized server performance to handle concurrent users and ensure reliable data collection." - ] - }, - { - "shortDesc": "Developed Java plugins for AI training data collection and security.", - "longDesc": [ - "Developed and improved Java plugins to monitor user actions and collect behavioral data for AI training.", - "Implemented security measures through custom plugins to identify and block malicious behaviors and users." - ] - }, - { - "shortDesc": "Contributed to documentation and data pipeline for AI research.", - "longDesc": [ - "Documented technical implementations and contributed to the data pipeline for AI research." - ] - } - ], - "location": "Vancouver, British Columbia, Canada" } ] } diff --git a/src/assets/skills-details.tsx b/src/assets/skills-details.tsx index 0313a9b..4bdea96 100644 --- a/src/assets/skills-details.tsx +++ b/src/assets/skills-details.tsx @@ -36,6 +36,12 @@ import { SiTailwindcss, SiSass, SiPostgresql, + SiAnsible, + SiKubernetes, + SiGrafana, + SiTerraform, + SiNestjs, + SiMongodb, } from "react-icons/si"; import { GiMagnifyingGlass, GiEarthAmerica, GiJapan } from "react-icons/gi"; import { BsDatabaseGear, BsFiletypeSql, BsDiagram3 } from "react-icons/bs"; @@ -64,7 +70,7 @@ export const skillsData: SkillCategory[] = [ { name: "R", icon: }, { name: "C", icon: }, { name: "C++", icon: }, - { name: "Matlab", icon: }, + { name: "MATLAB", icon: }, ], }, { @@ -83,6 +89,8 @@ export const skillsData: SkillCategory[] = [ { name: "WebGL", icon: }, { name: "Three.js", icon: }, { name: "Express.js", icon: }, + { name: "NestJS", icon: }, + { name: "TanStack", icon: }, ], }, { @@ -113,6 +121,7 @@ export const skillsData: SkillCategory[] = [ { name: "MySQL DB", icon: }, { name: "OracleDB", icon: }, { name: "PostgreSQL", icon: }, + { name: "MongoDB", icon: }, { name: "Data Warehousing", icon: }, ], }, @@ -143,6 +152,10 @@ export const skillsData: SkillCategory[] = [ { name: "Git", icon: }, { name: "GitHub", icon: }, { name: "Docker", icon: }, + { name: "Kubernetes", icon: }, + { name: "Ansible", icon: }, + { name: "Terraform", icon: }, + { name: "Grafana", icon: }, { name: "Vim/Nvim", icon: }, { name: "Zsh", icon: }, { name: "AWS", icon: },