Hi, I'm Dmitry

Full-stack web developer with a passion for UX and building products.

Vancouver, Canada and remote. He/him.

I specialize in building Single Page Applications and SaaS, doing full-stack web development with Next.js, TypeScript, React and Node.

I love moving fast, delivering value for early-stage startups and small team in rapid growth stage. I'm a quick learner, driven by results and require minimum management overhead.

Have a project or collaboration in mind?
I'd love to have a chat!

Contact me

Featured Projects


Best-in-class online fantasy maps editor, community and art platform for D&D and tabletop enthusiasts.

My roles:
full-stack web engineer, product and UX design.

Tech stack:
TypeScript, React, Rust, Rails, Postgres.

My roles

Joined the small remote team to help rewrite their core product. Worked together with stakeholders, designer, artists and a backend engineer to help craft a great user experience.

  • Co-designed and implemented the next version of the editor app
  • Helped migrating tends of thousands user accounts to the new system
  • Enabled massive company growth and set it up for new business directions
  • Worked with Early Access users group to gather feedback and improve the app
  • Implemented advanced Canvas rendering techniques and tuned client-side performance


Advanced wordcloud art generator.

My roles:
maker, product design, UX, back-end, front-end, deployment, infrastructure

Tech stack:
Node/Nest.js, TypeScript, MobX, React, Next.js, Rust, Postgres, TypeORM, AWS.

My role

It's my pet project, where I did everything myself – from product and UX design to implementing and deploying a complete SaaS product.

A few highlights:

  • Reverse-engineered a few existing solutions, figured out a good greedy algorithm to fill the shape with words
  • Efficiently implemented this algorithm in Rust / WebAssembly running in a WebWorker to keep the UI responsive.
See all projects

Recent Notes

SEO story of a pet project

How MyGuitarTuner reached 14k monthly visitors in 6 months. Sharing stats, how long it was to take off, and why niche-specific pages are great