During my time at SafetyCulture we grew from having less than a handful of developers to a company with hundreds of employees, an experience in itself..
In my role as a developer I predominantly worked with NodeJS micro-services but started off by building a monolith AppEngine website and concluded with building a React app which I thoroughly enjoyed.
My role also included the normal mix of designing service and module APIs, writing tests, mentoring junior devs, reviewing pull requests, providing customer support, and advising on and debugging issues across the stack.
Some highlights in roughly reverse chronological order (for relevance and preference):
Created a new React app with Redux, Webpack, and Typescript including
• mono-repo setup
• shared component library
• bundle optimisations such as dynamic loading of components and Redux store slices
• tools for observing app bundle sizes as tables and charts
• development build and run modes to better replicate production builds for use in optimisation tasks
• optimised build system to decrease build time improving DX
• set up react-testing-library making writing component tests faster and easier than with Enzyme
• i18n system for translating app content
• reference implementations of common React patterns to guide developers
• Storybook to aid engineers and designers in working with the component library
• reusable utilities for managing api calls with Redux
• optimised app session loading
Implemented a complex audit scoring system with tests and documentation, bringing parity to the existing mobile implementations.
Created a console toolkit for the local dev environment for a better DX.
Built a custom NodeJS Docker image as a base for micro-services reducing time spent on securing and updating services.
Maintained and developed the subscription billing system.
Replicated the mobile app's PDF audit export in Python.
Built the base of the initial iAuditor server platform in Python.
In my role as a developer I predominantly worked with NodeJS micro-services but started off by building a monolith AppEngine website and concluded with building a React app which I thoroughly enjoyed.
My role also included the normal mix of designing service and module APIs, writing tests, mentoring junior devs, reviewing pull requests, providing customer support, and advising on and debugging issues across the stack.
Some highlights in roughly reverse chronological order (for relevance and preference):
Created a new React app with Redux, Webpack, and Typescript including
• mono-repo setup
• shared component library
• bundle optimisations such as dynamic loading of components and Redux store slices
• tools for observing app bundle sizes as tables and charts
• development build and run modes to better replicate production builds for use in optimisation tasks
• optimised build system to decrease build time improving DX
• set up react-testing-library making writing component tests faster and easier than with Enzyme
• i18n system for translating app content
• reference implementations of common React patterns to guide developers
• Storybook to aid engineers and designers in working with the component library
• reusable utilities for managing api calls with Redux
• optimised app session loading
Implemented a complex audit scoring system with tests and documentation, bringing parity to the existing mobile implementations.
Created a console toolkit for the local dev environment for a better DX.
Built a custom NodeJS Docker image as a base for micro-services reducing time spent on securing and updating services.
Maintained and developed the subscription billing system.
Replicated the mobile app's PDF audit export in Python.
Built the base of the initial iAuditor server platform in Python.