📞 (604) 520-8515
📧 [email protected]
I'm a passionate software engineer based in Vancouver, BC ****🏔️ ****with 8 years of professional experience.
Vidyard, Vancouver, Canada (Remote) | Nov 2022 – Present
Working in the exciting area of video creation through the development of products that get used with a browser extension or web & mobile apps.
commit.dev, Vancouver, Canada (Remote) | Jun 2022 – Nov 2022
I took on the role of a Full Stack Developer increasing the Commit community’s brain gain with meaningful contributions through projects, peer-to-peer collaboration and mentoring.
Legible, Vancouver, Canada (Remote) | Jan 2022 – Jun 2022
Directly reporting to the CTO, I was responsible for the direction of the software architecture and technology strategy.
- Development team enabler and mentor for web and cloud technology with best practices, propagated internal standards. Supported multiple teams to increase adoption of Agile and DevOps culture.
- Designer and engineer of proof-of-concepts to evaluate and adopt long-term technology choices and specifications.
- Defined and improved the developer experience for multiple codebases:
- JS/TS/GraphQL/React/NodeJS monorepo for web applications.
- Java/Go/Kafka services for core platform systems.
- Principal engineer for backend systems using technologies such as Go, Kafka (Streams API), PostgresDB DBA (indexing optimizations, migrations, diagnostics).
- Established roadmaps and planning for enterprise SOA adoption, internal API stability and discoverability, OAuth/OIDC adoption, TDD sustainability, migrating React usage to TypeScript (to match backend).
Legible, Vancouver, Canada (Remote) | Sep 2020 – Jan 2022
Directly reporting to the CEO, I hired and managed a full software development department to produce a next generation – web & mobile first – reading and publishing platform.
- Primary contributor to the development environment and initial codebase for a full-stack web development experience for my team, which included integrations for:
- Compilers/transpilers (TypeScript, Babel), module & asset bundlers (Webpack), packagers (NPM/Yarn, Docker), linters (ESLint), formatters (Prettier), test & coverage runners (Jest), API docs & changelog generators, git commit-time checkers (Husky), monorepo & multi-project linkers (Lerna, Yarn workspaces), components explorer (Storybook)
- Leveraged PostGraphile to produce a GraphQL schema from PostgreSQL objects, RLS, RBAC. This was used to rapidly develop our first release. We later found that Netflix was exploring this as well.
- Shipped the company’s first products, from MVP to follow-up milestone releases:
- Lead in developing a React web-powered, mobile-first, cross-platform eBook eCommerce storefront, equipped with payment & sales tax processing (Stripe and Avalara integration)
- Primary developer of an EPUB streaming microservice coded in Go (archive/zip, net/http, crypto/aes) for clients with DRM for the web (DHKE, WebCrypto) that passed industry compliance checks and security penetration tests.
- Lead in developing a Kafka powered ONIX (EDI XML) metadata processing pipeline to ingest and merchandize 175,000 eBooks from three of the world's biggest publishing companies.
- Managed a team building an AI ML engine for product recommendations paired with PostgreSQL full-text search, evaluated with ElasticSearch.
- Managed cloud resources with Infrastructure as Code when possible:
PressReader, Vancouver, Canada | May 2019 – Sep 2020
Led a team of three to develop an SDK for mobile platforms from the ground up for internal product teams, with the intent of external commercialization:
- Designed the SDK core architecture inspired by the React Native bridge concept, targeting the business domain and requirements; Think of PSPDFKit but for EPUB/HTML:
- Users of the API wrote idiomatic code in Kotlin or Swift. RPC for the API calls interoperated with TypeScript implementation code.
- TS code ran in a WebView which also rendered the primary output for HTML content.
- This enabled the team to rapidly develop the SDK with a reduced effort using TypeScript to ship the same features in a single pass to the public Kotlin/Swift APIs.
- Built a CLI tool in Go to manipulate EPUB OCF ZIP files with high & low level commands.
- Developed a comprehensive CI/CD pipeline for web & native SDK component testing using GitHub Actions:
- iOS/Android testing (XCTest, similar for Android) integrated real device testing with video recordings and log tracing. Challenges included reducing flakiness, execution time, and maintaining the specifics for iOS and Android tooling.
- Incorporated API docs generation for Kotlin & Swift with a supplemental docs site in Docusaurus deployed via CI/CD.
Evident Point Software, Vancouver, Canada | Jan 2017 – May 2019
Lead developer of JS libraries and components used across the company's product portfolio.
- Trailblazer in R&D and proof-of-concept development using web technology for the organization. Results from this effort contributed to both internal and sponsored open-source projects, which succeeded and qualified for Canada’s SR&ED program.
- Participated and represented the company in the open source community and standardization process.
Evident Point Software, Vancouver, Canada | Jan 2014 – Jan 2017
Full stack developer and JS front-end specialist for the flagship Ruby on Rails company product — ActiveTextbook
- Successful track record in delivering, year over year, B2B white-label contracts and consultation for the company's enterprise clients.
- Integrated and contributed to the back-end development using Ruby on Rails.
- Key contributor in the evolution of the product to handle EPUB publication types, large refactor from PDF only codebase. Increased value in the product which unlocked business opportunities and revenue generation.