Verified Expert in Engineering
Hamish has provided digital solutions for some of the largest companies in New Zealand and served as the lead developer of an award-winning educational web app with over 50,000 downloads in its first year. Hamish works hard to understand his client's vision and prides himself in finding efficient and elegant solutions to produce remarkable customer experiences.
Git, MacOS, Visual Studio Code (VS Code)
The most amazing...
...thing I've made was a web app designed to help people learn the Māori language. It has had over 50,000 downloads, won awards, and has become a school staple.
Senior Full-stack Developer
- Created user authentication with multiple OAuth providers, user invites for admins, and account management pages.
- Added new functionality to a Photoshop-style UI that used three.js and R3F.
- Created performance improvements by refactoring React components, analyzing memory leaks from three.js, and restructuring parts of the codebase.
- Fixed outstanding bugs across all major browsers and devices.
Senior Full-stack Developer
- Converted a React site to Gatsby for performance and SEO improvements.
- Changed a Prismic CMS content-delivery method from a REST API to GraphQL to more easily render static content in Gatsby.
- Made performance updates to the site via code splitting and refactoring large blocks of repeated code.
Senior Full-stack Developer
- Set up A/B tests for a new concept the company was trialing.
- Created a method for monthly subscriptions with a 7-day free trial via the Shopify API.
- Connected existing Calm members eligible for other benefits via a partner program to new healthcare services.
- Sent out automated emails and calendar scheduling via a cron job as webhooks were still in development for the API we relied on.
- Led the development of an award-winning web app with 50,000+ downloads of user-generated educational posters and an average session time of four minutes across 100,000+ users.
- Implemented Redux to handle states between many components of an interactive journey.
- Refactored a company site from React class-based components, using jQuery to a more performance-focused ES2018 Gatsby static site with functional components and React hooks.
- Worked closely with top-notch designers and UX (user experience) experts.
- Generated custom JPG images from user-input data to be shared for a social media campaign and PDFs to sell print-ready custom posters on Shopify.
- Created interactive SVG animations to showcase the characters and weights of a new typeface.
- Created a live data visualization dashboard for a bank's partner center, which connected many APIs: weather (OpenWeatherMap), forex (Open Exchange Rates), stocks (Alpha Vantage), and traffic updates (via Twitter).
- Used facial recognition and Three.js (WebGL) to transform visitors' headshots into a moving, psychedelic, 3D collage of them as they enter a bank's waiting room.
- Used Mapbox to create custom map icons, overlay styles, and animations for an interactive journey.
- Migrated the company site's CMS from Craft to Sanity.io, leveraging Sanity's CLI for speedy content migration.
Union Digital (now AKQA)
- Planned, created, tested, and prototyped modules (mostly animation based).
- Helped add mobile-first 360º videos for a public aquarium's new launch.
- Implemented an email marketing campaign with custom templates for our clients to choose from.
The web app was designed to help novices to the language of Te Reo gradually learn their Pepeha through an interactive journey. After completing the journey, the information the user gives is used to create a personalized Pepeha for them, which they can download for free as a JPG or buy as a printed poster. A custom font was created exclusively for the Pepeha Project, and an algorithm was made to ensure that the formatting of each poster was picture-perfect no matter what the user added.
I was the lead developer of the project.
It was awarded a purple, gold, and silver pin at the Best Awards:
• Ensured that the assets were appropriately resized for screen size/pixel density while still being high quality for the typical client of this company.
• Implemented progressive image loading.
• Refactored from React class-based components, using Query to a more performance-focused ES2018 Gatsby static site with functional components.
• Added Jest tests in the most crucial areas.
• Developed page-transition animations.
I converted the React site to GatsbyJS and changed the Prismic CMS content-delivery method from REST API to GraphQL to more easily render static content in Gatsby. I also made performance updates to the site via code splitting and refactoring large blocks of repeated code.
React, D3.js, Three.js, Node.js, React Redux, Moment.js, Shopify API, TensorFlow, jQuery, REST APIs, WebGL, Socket.IO, Stripe API, Tizen Wearable
Full-stack, SVG, Web Animation, Front-end, Gatsby, Responsive Web Apps, Website Performance, Enzyme, Google SEO, ES2018/ES9, CSS Grid, TSLint, Axios, Web App UX, MERN Stack, Animation, React Hooks, SEO Tools, Data Visualization, Algorithms, APIs, Single-page Applications (SPA), ESLint, WebSockets, Sapper, Apollo, Progressive Web Applications (PWA), A/B Testing, Prismic, Wearable Technology, Responsive UI, Sanity CMS, Dashboards
Redux, Jest, Express.js, MUI (formerly Material UI), Angular, React Native, Cypress, AngularJS, Svelte, Next.js, Electron
Firebase Authentication, Canvas, GitHub, Webpack, Adobe Illustrator, Adobe Photoshop, CircleCI, Mongoose, Git, Gulp, Cron
Test-driven Development (TDD), Functional Programming, E2E Testing
Firebase, Netlify, Mobile, GreenSock Animation Platform (GSAP), Shopify, Arduino, Heroku, Tizen, MacOS, WordPress, Contentful, Amazon Web Services (AWS), Visual Studio Code (VS Code)
Firebase Realtime Database, JSON, MySQL, MongoDB, PostgreSQL, NoSQL, Amazon DynamoDB, Amazon S3 (AWS S3)