Experience
Commonwealth Labs
New York, USA (Remote)
Senior Software Engineer
December 2022 ‐ Present
- Founding engineer in a startup which recieved series A funding. Involved writing full-stack code for commonwealth.im , a crypto-based social media platform.
- Scaled our platform from serving 3rps to 70rps, while keeping the price per rps relatively flat.
- Conducted the technical interview stage for prospective engineering candidates.
- Wrote EVM smart contracts in solidity for various projects and partnered with the front-end team to help integrate them through slack communication and code reviews.
- Wrote various webpages and React components based off figma designs while collaborating closely with the design team to ensure optimal feature usability and alignment with the product vision.
- Designed our asynchronous API using rabbitmq to listen to evm events to reflect changes on our platform.
- Performed strangler-fig migration from express to tRPC.
- Worked with frontend team to migrate our state management over to TanStack Query based off the tRPC code generation.
- Built our integration testing system for our API and Anvil through the use of Testcontainers.
- Spearheaded migration from Heroku to AWS, reducing monthly infrastructure costs by 15%.
- Wrote our CI/CD pipeline in github actions involving image caching on ECR for immutable deployments.
- Added an analytics pipeline based of Postgresql pg_stat allowing us to iteratively optimize the most costly queries.
- Configured Cloudflare to cache assets as a CDN, and migrated asset urls in database to route through it.
CardinalChain
Vancouver, Canada
Backend Software Engineer
April 2019 ‐ December 2022
- This project consisted of multiple microservices making up the parts of a crypto exchange for the largest crypto exchange on the Japanese market (coin.z.com).
- Ran the full gamut for a new service. Including designing and writing the application in Spring Boot. Adding to our terraform config to provision compute and external services. Containerizing it and deploying it to via a kubernetes deployment manifest. Performing all these steps in a Jenkins CD pipeline.
- Introduced hashicorp vault into our CI/CD pipeline to use consistent environment variables across our staging environments.
- Optimized SQL queries through the use of the query planner and data access patterns.
- Implemented Redis caching for certain high-frequency API endpoints.
- Implemented asynchronous APIs with the help of RabbitMQ.
- Analyzed JVM to improve performance. Identified and resolved a difficult bug involving JVM bottlenecking the resources during application startup.
- Designed and built an asynchronous message processing service using Spring Boot and RabbitMQ.
- Wrote Dockerfiles to containerize microservices in Docker. Optimized existing Dockerfiles to reduce the final image size.
- Improved Jenkins CI/CD pipeline by adding an in-stress testing pipeline.
- Designed internal support tool for currency transfer via Trezor wallet API. Used ReactJS and Spring Boot.
Education
University Of Toronto
Toronto, Canada
Bachelors Of Science in Computer Science
2015 ‐ 2019