A comprehensive overview of my technical skills, development principles, and tools I use to build modern web applications.
Proficient in modern JavaScript (ES6+), including asynchronous programming (Promises, async/await), DOM manipulation, and REST API integration.
Building a safe development environment through type safety. Writing robust code using interfaces, generics, and union types.
Designing HTML structures with semantic markup and web accessibility (WCAG AAA) in mind. Enhancing SEO and user experience.
Implementing layouts using responsive design with CSS Grid/Flexbox. Improving maintainability through CSS variables and modularization.
Modern React development using functional components and Hooks. Optimizing component design and state management.
A React-based full-stack framework. Developing high-performance web applications using SSR, SSG, and the App Router.
Fast development server and build tool. Experience migrating from CRA to Vite, reducing build time by 82%.
A lightweight state management library. Optimizing applications by separating global/local state and reducing complexity.
A utility-first CSS framework. Enabling rapid prototyping and consistent design system implementation.
A CSS-in-JS library. Component-based styling using dynamic styling and theming systems.
A data visualization library. Experience implementing complex charts and interactive graphs.
A TypeScript-first framework for creating node-based visual editors. Experience building dataflow-driven interfaces and custom visual programming tools.
A high-resolution image viewer library. Implemented visualization for pathology images and large SVS files.
CI/CD pipeline automation. Improving development efficiency by automating build, test, and deployment processes.
Version control and collaboration tool. Systematic code management through branch strategies and commit conventions.
A JavaScript testing framework. Ensuring code quality through unit and integration tests.
A Vite-based testing tool. Fast test execution and development environment optimization.
Adhering to WCAG AAA guidelines. Providing an inclusive web experience through dark mode implementation and color contrast optimization.
Designing modular components. Applying architectural patterns that consider reusability and maintainability.
Principle of Separation of Concerns. Improving code quality through clear separation of business logic and UI logic.
Don't Repeat Yourself (DRY) principle. Abstracting common logic and designing reusable components.
Single Responsibility Principle. Designing each component and function to have one clear responsibility.
Test-Driven Development (TDD). Writing stable code by creating tests before implementation.