About

Further insights into who I am and the purpose of this blog.

avatar

Do Trong Khanh

Software Engineer
Spartan

Hello, folks! I'm Trong Khanh (aka Karhdo)

I have a passion for JavaScript/TypeScript and website development. I work mainly software engineer at Spartan, deeply engaged in the Dealops project, with JavaScript, TypeScript, NodeJS, ReactJS, and Monorepo.

Why have this blog?

My desire to practice my skills and share my acquired knowledge fuels my endeavors.

I founded this blog as a means to document and share the knowledge and practical wisdom I've acquired during my journey as a software engineer.

Writing and taking notes helps me solidify my understanding of new concepts and technologies. I hope my blog can be a useful resource for fellow web developers.

I would greatly appreciate your thoughts and comments on what I have written .

My Career

Resume
  • Spartan
    Mar 2025Present
    Spartan
    Software Engineer
    • Dealops – SaaS platform that helps Sales and Revenue Ops teams manage deal pricing and quoting with AI. Built a conversational chatbot UI using React, TypeScript, and TailwindCSS, integrating streaming APIs from the backend to deliver a smooth and responsive user experience. Also implemented complex pricing configuration and admin dashboards using React Hook Form, Ant Design, and a Turborepo-based monorepo to streamline development and deployment.
    • Deepsky – Data platform for processing CO₂ removal measurements and validating them into carbon credits that can be traded on the global carbon market. Designed and implemented data pipelines following the medallion architecture, leveraging Apache Spark, Delta Lake, AWS S3, AWS EMR, and Databricks to optimize data processing and analytics workflows.
  • Younet Media
    Mar 2022Mar 2025
    Younet Media
    Junior Software Engineer
    • Built Ecomheat – a web platform that measures industry and brand performance across major E-commerce channels, providing analytics and insights for marketing and business teams.
    • Developed AppCore – a set of reusable NestJS core packages (including DatabaseModule, CacheModule, RedisModule, ConfigModule, and others) and published them to npm to accelerate development and deployment across multiple internal projects.
  • QKIT Software
    Jan 2021Dec 2022
    QKIT Software
    Fresher Backend Developer
    • Developed and maintained web applications used to manage company website content, including blogs, client portfolios, and recruitment pages.
    • Implemented backend services using NestJS, PostgreSQL, and Prisma, focusing on clean architecture, performance, and maintainability.
    • Participated in Agile/Scrum workflows, collaborating closely with designers and senior engineers to improve delivery speed and overall project quality.
  • University of Information Technology
    Aug 2019Jun 2023
    University of Information Technology
    Student at UIT – HCMC (School of Computer Science)
    • Graduated with a good academic standing at the School of Computer Science.
    • While many of my peers pursued careers in Data or AI Engineering, I found my passion in Software Engineering, especially in web and application development – a decision that has strongly shaped my current career path.

Tech stack

This blog is built with Next.js and Tailwind CSS using Tailwind Nextjs Starter Blog.

This blog site takes inspiration from leohuynh.dev. I appreciate Leo Huynh and Timothy Lin for their contribution to this minimal, lightweight, and highly customizable blog starter.

A few major over-engineering-changes from the original repo:

  • Upgrading to React 19, Next 16.
  • Adopting Typescript, committing with Conventional Commits
  • Monitoring site with Umami website analytics
  • Theming in dark mode with Tokyonight Neovim Theme colors for better contrast.
  • My website refers to the design and code from the lehuynh.dev repository and incorporates the tailwind-nextjs-starter-blog template, version 2.0.
  • Bumping up mdx-bundler, rehype/remark plugins and dependencies to the latest version

See my repository for this blog.