Passionate about software development, I am both detail-oriented and able to scope out technical requirements and workflows in every project. My experience, ranging from memory- and space-constrained applications running on 8- and 16-bit microcontrollers to large scale ETL pipeline development, allows me to envision possibilities in order to efficiently guide projects to completion.
Experience
VP Software Solutions
- Working as a principal engineer, I contributed to the design and development of 9 products and offerings during my tenure, including four M2M products built on ARM9- and ARMv7-class hardware. To decrease the amount of custom work required on each infrastructure, a common core was developed in Rust, with FFI bindings whenever necessary, to provide a reliable and performant software ecosystem across heterogenous architecture types.
- Liaised with clients to accurately derive specifications, needs and demands for products.
- Led the development of a passive, hybrid, self-learning TDoA/AoA passive geolocation solver to empower users of devices communicating over LoRa, allowing them to accurately multilaterate their sensors across both urban and rural landscapes, completely passively. Due to the need for large-scale data ingestion and analysis requirements, Cassandra, Elasticsearch and Scala (with Akka as actor framework) were leveraged.
- Provided a complete overhaul of the infrastructure present at RFI in order to provide reliable builds, both at a software level and during the manufacturing process for all products. Leveraging the strengths of an architecture centered around autonomous service discovery and loose coupling, contract-based services, this overhaul reduced the TCO and number of emergency calls drastically.
Technologies used:
- Frontend: HTML/CSS/JS, webpack, rollup, React, VueJS
- Backend: Scala/Akka, Rust, PHP, NodeJS, C/C++
- Infrastructure: Nomad, Consul, Docker, Drone, Cassandra, Elasticsearch, MariaDB, Galera cluster
CTO & Software Architect
Collaborated with the product team to transition a small-scale analysis tool into a large-scale lead generation tool. With careful and measured inference and heuristics, a website visitor could be accurately linked to a working company, allowing clients to bypass the cold-calling part of B2B relations.
With a 700% traffic increase over the period, the results were a more consistent, clearer view for clients, and more accurate data, deriving clear insights from unstructured data.
Technologies used:
- Frontend: HTML/CSS/JS, webpack, Angular
- Backend: Scala/Akka, PHP
- Infrastructure: Nomad, Consul, Docker, Drone, Elasticsearch, MariaDB, Galera cluster
Full-stack Developer
- Upgraded, optimized and maintained a 21-node Sphinx cluster, providing the ability to perform full-text search and aggregates over a corpus of 5bn social media documents with an ingestion rate of ~30M docs/day.
- Designed and implemented a replacement infrastructure, powered by elasticsearch, Apache storm and nodeJS to provide additional features, including the ability to perform real-time queries (using an in-house, custom-built JIT-optimized query analysis tool to mimic the sphinx-like syntax used by clients), while simultaneously allowing a simpler, more reliable, more structured multi-tenant infrastructure capable of withstanding the needs and demands of clients such as Clarins and Orange.
Technologies used:
- Frontend: HTML/CSS/JS, webpack
- Backend: Scala/Akka, PHP, NodeJS, Python
- Infrastructure: Sphinx, Docker, Elasticsearch, MariaDB, Galera cluster
Senior Software Architect
Designed, developed and implementated a documentation and build management system in order to provide targeted deliverables to the direct clients of Neovera. This integrated with Jenkins in the form of a plug-in.
PHP Developer
- Contributed to the development, testing and release of bespoke websites for clients ranging from local resorts to European water management collaboration tools, along with the tools to allow such projects to come to life in a very rapid turn-around cycle.
- Introduced tools and techniques to allow any project to leverage multiple technologies and environments, including a custom PHP-ASP session handler
PHP/Ruby developer
- Designed and developed uQast's video transcoding pipeline, built on top of AWS's SQS platform and leveraging both Amazon EC2 and Rightscale's infrastructure.
- Contributed to the development of the customer-facing user interfaces along with a team based in Ukraine, along with providing code reviews and advice.
- Provided clear, strategic insights and monthly reports on features and the state of the platform in order to shape the flow of development for the foreseeable future.
PHP Developer
While working freelance, I helped create value for a number of companies in the vicinity of the university I graduated from, by providing them the tools to compete online and generate sales by other means than a physical outlet.
Open-source Initiatives & Volunteering
I am one of the main contributors for the [rust]
tag on Stackoverflow, and provide guidance at any level, particularly on subjects regarding interoperability of Rust with other languages (FFI
).
Other contributions include:
loriot-sdk
, a Javascript collection of tools used to interface with the LORIOT LoRa network server, officially supported by them- I am authoring most of the refactoring of
elasticlunr.js
, as I firmly believe in the possibilities that a Lucene-like client-side reverse index searching tool can bring dbase_parser
, a Rust crate borne out of a Stackoverflow question, allowing developers to parse dBASE file formats.
Skills & Expertise
Software Development Methodologies
TDD, BDD, Extreme Programming, CI/CD, SOA, Microservices, CQRS/ES
Programming Languages
Rust Javascript PHP C/C++ Scala Java Spoken Languages
English Native French Native Frameworks
React, React Native, Angular, Vue, Riot 2.0, hyper (Rust), warp (Rust), actix (Rust), hapi, Laravel and others
Infrastructure, CI/CD
Proven expertise in deploying and maintaining infrastructure topologies leveraging Consul, Nomad, Terraform, Envoy, Docker, runkit and Apache Mesos
Knowledge of modern penetration testing techniques and tools, including fuzz testing, both white-box and black-box analysis, metasploit usage and module development
Databases & Stream Processing Technologies
Expert knowledge of database design and optimization, including DBA work on petabyte-level datasets on both relational, document-based and graph-based storage engines
Expert knowledge of MariaDB internals, including technical advantages and limitations of all major storage engines (InnoDB, NDB) and clustering strategies (Galera Cluster, InnoDB Cluster, NDB)
Export knowledge of Elasticsearch, Cassandra, Kafka, Apache Spark and their usage in large-scale ETL workflows
Education
- BSc Physics, Upper Second Class
University of Bristol - European Baccalaureate
European School, Culham
Awards & Talks
- Talk: Current & Future Database Storage Engine Methodologies
10th May 2016, European Patent Office, The Hague - PHP Innovation Award
October 2006 - Formal mathematics toolkit for differentiation and integration - PHP Innovation Award
July 2005 - RCD: implementation of all the formulae required to predict and model the radioactive decay of particles