
Laurent Senta
Senior Software Engineer - Full Stack & Dev Tools
Salary / Daily rate
Lyon, France
Freelance, open to permanent contract
Skills
Languages
Work experience
Senior Engineer - Co-Founder
IPDX
Dec 2023 - Present
2 years 11 months
Remote, OR 97458, USA
We productized our team at Protocol Labs: Developer Productivity Studio, we work with small and medium-sized companies to improve tooling, CI, and delivery. "We handle CI and tooling; your developers focus on product."
Software Eng - Productivity & Test Infrastructure
Protocol Labs
Feb 2022 - Dec 2023
1 year 11 months
Remote · Remote
Worked on Testground, a platform for testing, benchmarking, and simulating distributed and peer-to-peer systems at scale. - "Brought it back from the dead" - Improved Stability, from 40% error rate to <1% for non-go SDK - Rewrote the Docker Executor, - Worked on interoperability testing for libp2p, go, and rust implementations, - Became de-facto owner for the project, dealt with Roadmap, project organization, etc. - reviewed PR, supported other contributors, etc. Also built the IPFS Gateway Conformance Platform - Designed a custom DSL for testing specifications with the IPFS core team - Implemented data generation scripts - ported hundreds of test cases from shell to our DSL using AI - Create a conformance dashboard, heavily integrated with Github Actions to make it super easy to integrate with other implementations (conformance.ipfs.tech) Finally, helped with regular maintenance of developer productivity & developer experience tooling in the team.
Full Stack Engineer Freelance - Product & Tools
Singular GardenFreelance
Sep 2017 - Mar 2022
4 years 7 months
Remote, OR 97458, USA
Freelancing & Product Dev // Full Stack - Blockchain - Distributed Systems. - Built a Chrome extension to onboard the first users of an edtech startup; later mentored their first engineer to take over the main product (Next.js, MobX, Typescript). - Designed and built a GDPR-compliant on-chain degree verification system (Node.js, MongoDB, Ethereum). It became a new product in the client’s portfolio. Upskilled their lead engineer to take over maintenance. - Provided full-stack and developer tooling services for seven other orgs (foodtech, health, crypto, big data).
Technical Lead - Backend & Ops
Cascade8Freelance
Jan 2019 - Dec 2020
2 years
Hybrid
- Owned the company’s backend infrastructure, from 0 to 1k+ enterprise clients and 3 to 10+ engineers. - Designed and championed a Cypress E2E test suite for the Angular app. A BDD-style structure eliminated ambiguities and back-and-forth between product and engineering teams. - Automated releases, upgrades, and migrations on a Firebase Functions + Firestore stack via CircleCI, reducing MTTR from hours to minutes. - Mentored 5+ junior developers in backend design, best practices, E2E testing, and TDD.
Software Engineer - Big Data
ScrapinghubFreelance
Oct 2014 - Oct 2017
3 years 1 month
## Data Storage Platform: Owner of the Hubstorage Plateform Added new APIs, Analytics, and Distributed Synchronization Systems -- Zookeeper, HBase, Hadoop. Setup new testing tools, Continuous Integration, and transition to Docker. ## Testing Framework for a new micro-service platform based on Kafka
Software Engineer, Data Team
Turn
Jan 2013 - Oct 2014
1 year 10 months
London, UK
## Data Management Platform Engineer (~100+ PetaBytes), team of 6. Design, Test & Development, then Deployment, Validation, and Maintenance for: - Optimisation algorithms for our data processing platform - Code generations framework to optimize our storage system and simplify the database maintenance, - Automated analysis of our codebase to detect hotspots of our storage schemas. ## Database Optimization using Vertical Partitioning algorithms for the company's DMP. 1. Analyze the database workload, 2. Find optimized representations of the database, 3. Build & Use these alternatives of the database during query execution. - I adapted state of the art algorithm in Vertical Partitioning for a Nested Database, - Added Tools and Software Patterns to facilitate transformation and statistics extraction from the database, - Developed a format-agnostic library to implement Vertical Partitioning Algorithms, - I was the only active developer on this project and minimizing the amount of changes in the codebase was mandatory: this optimization "hijack" the serialization system and does not require any changes to the execution system.
Student Researcher
LRDE - EPITA Research And Development Laboratory
Feb 2011 - Jan 2013
2 years
7620 Paris, Denmark
I was part of the LRDE where I worked with researchers and other students on Climb, a Generic Image Processing library written in Common Lisp. I also presented this library at the 5th European Lisp Symposium, in Croatia. 3rd year: Addition of parallelism to the library: - Implementation of a thread-pool system on top of a threading library - Add parallelism tools such as the divide and conquer approach on top of the generic iterators 2nd year: graph-based images API and a GUI for Climb using Climb itself: - Implementation of graph images in Climb as a new type of image - Implementation of a graphical interface to build chains of algorithms by connecting different, parametrizable, boxes - This GUI is a proof of concept of Climb's genericity, it is based on the Climb implementation of graphs itself 1st year: generic Iterators dedicated to Image Processing: - Design and implementation of a way to process any kind of images using the same iterators semantic (think N-d images, graph, etc).
Internship: Autonomous Life
Aldebaran Robotics
Sep 2011 - Jan 2012
5 months
Paris, France
I developed an Artificial Intelligence (Autonomous Life) for NAO, the humanoid robot produced by the company. This AI brings "life" to the robot by producing reactions to its surrounding, like fear of a loud sound. And mimics different moods, like boredom after a long time with no interactions. Autonomous Interaction ---------------------------------- - Filtering/sorting algorithm that picks the best behaviors depending on the context - Event system producing an inner representation of the world - 3D memory for sound, images and faces - Reflex system reacting to these events (surprise, interest) - Packaged as a NAO application using Python and distributed to the robot beta-testers System (NAO OS) ------------------- - Online synchronization with the NAO Store and the user preferences - Behaviors (applications) downloading and updating automatically - C++ module available in the current system This work was released for beta-testers and the business team. I also did some demonstrations and training, mostly for business users and R&D teams to ensure the reuse of this work.
Internship: Information Technology
Banque Populaire Loire et Lyonnais
Jun 2010 - Aug 2010
3 months
Greater Lyon Area
Analyzer/parser of the Decision Support System, Python ---------------------------------------------------------------------------------- - Extract interactions between scripts, database and reporting workflows - Parser for SQL and SAS scripts - XML analyzer for Microsoft SSIS Graph navigation and drawing, in C# ---------------------------------------------------- - Simulated annealing algorithm for display (thousands of nodes and links) - Filtering with a small search engine - Interactive display using a flash visualization These two tools allowed experts to visualize the Decision Support System as a graph of workflow and data-stores. This simplified the task of business expert by reducing the time they took to understand a workflow, from days of looking through code to a few hours of graphical exploration.
Education
EPITA: Ecole d'Ingénieurs en Informatique
Master’s Degree
2008 - 2013
5 years 1 month
Notre Dame de Bel Air Highschool
Baccalauréat
2005 - 2008
3 years 1 month