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: Amazon Web Services (AWS), Tesseract, OCR, Pandas, NumPy, PyTorch, Machine Learning, AWS, Luigi, MongoDB, React, Meteor, Django, Python, Architecture, Web Development, Software Design, System Architecture Design, Project Planning, CTO, Technical Consulting
- 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, Web Development
- 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, Software Design
- 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, Technical Consulting, Feasibility assessments
- 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, Architecture, Web Development, Software Design, System Architecture Design, Project Planning, CTO
- 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.