Experienced Developer Available for Hire
4 years of work experience, award-winning side projects, skilled in system design, expert in Rust.
skills
Backend Development
REST, gRPC, GraphQL services in Java, Go, NodeJS. PostgreSQL and Redis databases. Continuous delivery with Kubernetes.
Web Development
React and Svelte apps with structured state management. JavaScript and Typescript. Responsive websites using HTML/CSS.
Systems Programming
Rust and its async runtimes. Non-blocking IO with io_uring. Foreign function interface. Performant data structures and algorithms.
Software Architecture
Relational and NoSQL modelling. Queue-based systems and microservices. CQRS and event sourcing. Domain-driven design.
Mobile Development
Dart/Flutter mobile apps for iOS/Android. Stream-based BLoC state management. Deep link navigation. Firebase backend.
Full Product Cycle
Acquiring customers, gathering requirements, managing expectations, timely execution, long-term maintenance.
testimonials
Dennis is very knowledgeable in software design and backend development. We used to manually print hundreds of individual shipping labels on Canada Post’s website. Dennis came up with an interactive tool that reliably integrates with their API, saving us days of labor.
Reza Farahini
Co-founder and CTO at WFHomie
Dennis is an experienced web developer, with an insight into the nuances of modern website design and implementation, compatibility with different platforms/devices ...
Igor Kolotilin, Ph.D.
CSO & President at Solar Grants Biotechnology
work
Backend Software Engineer Intern
Dapper Labs: May 2022 - Aug 2022
- Identified 3 unnecessary layers in microservice design, created POC using Hasura, avoided over 1000 lines of boilerplate while creating a new service
- Added complex query to listings endpoint, implemented join and kick endpoints for squads service, wrote Go client library for an internal queueing API
Full-Stack Software Engineer Intern
WFHomie: May 2021 - Aug 2021
- Created fault-tolerant shipping label generator using NodeJS, Postgres, Canada Post API. Automation slashed typical order processing labor from 55h to 2h
- Introduced Rx-based state management to React webapp which decoupled UI from database code and enabled real-time updates without a page refresh
- Invented and championed new design for onboarding flow which resolved 12 backlog tickets. Project became the company-wide priority for two sprints
Backend Software Engineer Intern
CGI: Jan 2021 - Apr 2021
- Migrated Spring queue processor service from RabbitMQ to Solace PubSub+
- Configured resilient Consul services using templated systemd on RHEL servers
Backend Software Engineer Intern
Ultimate Software: Sep 2019 - Dec 2019
- Developed OAuth2 authorization microservices in identity platform team
- Added permissions claim to JWT on critical-path ForgeRock identity gateway serving 51M users, refactored to prevent zero-trust authorization recursion
- Uncovered an architectural issue in the event sourcing write model which breaks future compatibility, documented and presented solution to the team
Freelance Software Developer
Solar Grants Biotechnology: Jun 2018 - Aug 2019
- Acquired customer, gathered requirements, managed customer expectations
- Planned, designed, developed, released, and maintained sgbiotec.com, an online store selling lab-grade fluorescent proteins
- Written in React with MobX for state management, integrated with Shopify storefront API
Freelance Software Developer
Pocket Trade Show: Jul 2016 - Aug 2017
- Created Pocket Trade Show, an online tradeshow platform that connects buyers and sellers
- Developed web frontend using MVC pattern in PHP, implemented file upload to S3 bucket
- Restructured MySQL database to accommodate web in addition to mobile app, migrated existing data
education
Bachelor of Computer Science
University of Waterloo: Sep 2018 - Apr 2023
- $2000 President’s Scholarship of Distinction scholarship for 95% admission average
- Coursework: math, data structures, algorithms, operating systems, computer architecture, compilers, networking, databases, distributed systems, and more