Lead Internationalization Engineer2017 - PRESENTLyst
- Led the engineering effort to launch Lyst, a global fashion search platform, in non-English speaking markets. Two years on, these new markets represent 10%+ of annual revenues.
- Refactored code written by teams across the company to make the site available in multiple languages.
- Improved architecture, repaid technical debt, and made large changes without introducing bugs.
- Helped to design a new product development process that incorporates translation.
- Helped to design an international SEO strategy and then developed systems to implement the strategy.
- Developed paid marketing integrations with Google Merchant Center.
- Worked closely with non-technical staff across the company, including translators, legal, and PR.
- Designed a microservices architecture to integrate translation into the product development process, and automatically update translations on the website. Used AWS and Empire (similar to Heroku).
- Led a team of four and drove an initiative across every engineering team in the company to enable expansion to non-English speaking market.
- Refined requirements of a very complex project, involving every technical and non-technical team in the company.
Product Manager, Developer, and Architect2016 - PRESENTLiberal Democrats
Technologies: Tesseract, OCR, Pandas, NumPy, PyTorch, Machine Learning, AWS, Luigi, MongoDB, React, Meteor, Django, Python
- Built a file uploading service using React and Meteor, then scaled it up for use by party activists across the nation.
- Led the team that delivered a machine learning-powered system that has eliminated thousands of hours of repetitive manual work.
- Used PyTorch to make machine learning predictions.
- Used Tesseract to perform OCR.
- Used NumPy and Pandas to process millions of data rows.
- Led a team of seven to develop a monthly lottery to encourage donations to the party. Payments to and from players are made using direct debit.
Web Developer2020 - 2020Mercavus
Technologies: Hapi.js, React, QuickBooks API, Node.js, TypeScript
- Wrote an integration with the QuickBooks API.
- Made a React user interface so marketplace sellers could set up a connection to their QuickBooks account.
- Wrote Node.js Hapi endpoints to support OAuth authentication with QuickBooks.
- Wrote robust methods for interacting with the QuickBooks API, including integration tests.
- Wrote controller logic for synchronizing data between Mercavus and QuickBooks.
- Refined Jira tickets to clarify requirements and set out a roadmap for future development.
- Produced simple architecture diagrams to explain OAuth integration flow.
Lead Architect2015 - 2017Bright Analytics
- Designed microservices architecture: The legacy app was converted to a REST service, which provided data to a brand-new Meteor app that pushes data to users in real time.
- Architected and developed a data dashboard, with rich data visualizations, including collaborative dashboard editing. Used React and Meteor.
- Architected and developed a Gmail-style multi-tenant OAuth login system including custom extensions to satisfy client needs.
- Architected and developed an enterprise-grade permissions/access control system with high performance at scale.
- Architected and developed a high-performance in-memory caching system on the back end to optimize performance at scale.
- Architected and developed advanced Meteor publications providing fine-grained access control, including access to data from REST services, with high performance at scale.
- Introduced Scrum workflow to the development team.
Entrepreneur Developer2014 - 2015Oasis Academy
- Took personal initiative to develop a new solution to effectively record positive/negative behaviors within the academy's school database.
- Worked closely with teachers to refine the solution.
- Developed an application with CoffeeScript and Meteor to accurately record behavioral incidents, freeing teachers to focus more on students. Optimized the app for mobile devices.
- Integrated with classroom screen projectors via a custom Chrome extension.
Software Consultant and Developer2014 - 2015Bianca La Bufala
Technologies: Microsoft Excel, Win32 API, QuickBooks API, Python
- Led a project to deliver automated invoicing.
- Met with the business owner to discuss requirements.
- Captured the as-is process; designed a new solution to minimize impact on business as usual.
- Utilized Python to load sales, invoicing, and purchasing data from an Excel file.
- Saved transaction data to QuickBooks using Windows COM API.
- Succeeded in creating an automated invoicing solution, saving the business owner four hours per week of repetitive work.
- Used QuickBooks Desktop SDK to implement solution, using QBFC and qbXML.
- Architected solution using QuickBooks Web Connector (QBWC).
Technical Consultant2014 - 2014Private Entrepreneur
Technologies: iOS, Android, Objective-C, Java
- Personally approached by a private entrepreneur to evaluate a potential new product to save battery life on mobile phones.
- Conducted extensive R&D to verify the feasibility of the new app.
- Researched power management on Android and iOS.
- Developed an experimental application prototype.
- Identified potential issues with the proposed application.
- Developed a prototype app which proved only 8% battery saving against a target of 30%, enabling the entrepreneur to make key decisions.
Software Consultant and Developer2013 - 2014Oakley Hall Management
- Engaged to develop a new booking management solution for a popular wedding venue.
- Met with business owners to establish requirements.
- Targeted both mobile device and desktop users with responsive page layout using Bootstrap.
- Delivered the iterative product to business.
Lead Developer2012 - 2013Nightingale
- Led the development of Nightingale software to help thrift stores (charity shops) sell their stock online.
- Conducted initial research and met with 150+ thrift store managers.
- Designed product based on software usage data.
- Led a team of four developers.
- Engaged with potential new customers and secured our first client.
- Succeeded in driving the development of a new product sold to The London Buddhist Centre.
Business Analyst2012 - 2012FMT Books
Technologies: Microsoft Excel, Matplotlib, NumPy, Python
- Devised an innovative solution to calculate projected cash flow for FMT Books, which was seeking to raise additional funding and required a method of outlining revenue and cash flow projections.
- Collated software logs intended for other purposes.
- Performed major data transformation and cleansing process.
- Developed an application to compare logs using Python.
- Ran statistical analysis on results.
- Generated forecast diagrams in Excel and Python Matplotlib.
- Succeeded in generating accurate cash flow projections which demonstrated the need to re-focus business to drive growth.
Lead Developer2011 - 2012Amazon Marketplace Arbitrage
Technologies: MySQL, Python
- Co-founded a new venture that purchased non-fiction books from thrift stores (charity shops) and then resold them on the Amazon Marketplace.
- Built and scaled a distributed cloud infrastructure to monitor price/popularity of 20 million books on Amazon.
- Analyzed data to identify arbitrage opportunities.
- Set up new business premises.
- Built custom warehousing and logistics solutions.
- Led a team of six.
- Designed technical architecture.
- Developed a system using Python and MySQL.
- Succeeded in generating £100,000 in revenue by selling 10,500 out of 11,000 books. Video here: https://youtu.be/UNUW3zSiQhA.
- Wrote web scraping code to extract information from Amazon.co.uk.
- Scaled a MySQL database to efficiently store a billion rows of data.
Developer2006 - 2010Newbe.at
- Developed a rich social media user-interface using Flash, Flex, and ActionScript.
- Developed back-end systems in PHP and Java.
- Designed and maintained a MySQL database.
- Developed technical architecture.
- Assisted with UX design.