portfolio.bendou.space

Hi,
my name is
Sami Dahoux !
			

I'm a 6-years experienced software engineer with a em interest in web technologies and cyber-physical systems. I believe that engineering is an artistic and creative way to imagine and build the world we want to live in.

Make mankind dreams come true

Paris
Aletiq
Mines St-Etienne

Illustration of Hardware Design

Design of FPGA and ASIC based microelectronics components in the context of hardware security research.

Hardware Design

  • Embedded Systems
  • C
  • Signal processing
  • Project management
  • FPGA Prototyping
  • Software design
  • Python
  • Zybo devices
  • Processor Design
  • Physical Hacking
  • Data Science
6 months of experience
May 2020 - Nov 2020

Illustration of Software Development

Fullstack design of applications and websites as well as software libraries, both in open source and SaaS context.

Software Development

  • Git
  • VSCode
  • Notion
  • Web development
  • Javascript
  • Java
  • Project management
  • PostgreSQL
  • Haskell
  • System Design
  • Linux
  • Graphana
  • Product Management
  • Git
  • VSCode
  • Notion
  • Web development
  • Javascript
  • Rust
  • Software design
  • System Design
  • MongoDB
  • Embedded Systems
  • Signal processing
  • Project management
  • Software design
  • Artifical intelligence
  • Computer Vision
  • Mobile development
  • Swift
  • Bluetooth
  • System Design
  • Product Management
  • Data Science
  • Git
  • Web development
  • Computer graphics
  • Numeric simulation
  • Javascript
  • Rust
  • Java
  • Project management
  • Software design
  • Python
  • Physics
  • System Specification
  • Computer Vision
  • System Design
  • Game Development
  • Unity
  • C++
  • Jetbrains
  • Continuous Integration
  • Unit Testing
  • Django
7 years 4 months of experience
Sep 2017 - Jan 2025

Illustration of System specification

Definition of cyber-physical systems requirements and functional specification in the rail industry.

System specification

  • Rust
  • Embedded Systems
  • Project management
  • Software design
  • System Specification
  • System Design
  • MBSE
  • Formal proof
  • Formal logic
  • Embedded Systems
  • Project management
  • Software design
  • Physics
  • Maths
  • Digital mobility
  • Railway Signalling
  • Automated Subway
  • CBTC
  • System Specification
4 years 2 months of experience
Nov 2020 - Jan 2025
2014 * * * * * 2015 * * * * * 2016 * * * * * 2017 * * * * * 2018 * * * * * 2019 * * * * * 2020 * * * * * 2021 * * * * * 2022 * * * * * 2023 * * * * * 2024 * * * * * 2025 * * * * *
  • Lycée Paul Valéry
  • Mines St-Etienne
  • Mines St-Etienne
  • xRapid
  • Oyst
  • Mines St-Etienne
  • Aletiq
  • Alstom
Illustration of Software Engineer
JOB
2 years 3 months
Aletiq
Paris, France

Medior fullstack web developer on Aletiq Product Lifecycle Management solution

Software Engineer

  • Git
  • VSCode
  • Notion
  • Web development
  • Javascript
  • Java
  • Project management
  • PostgreSQL
  • Haskell
  • System Design
  • Linux
  • Graphana
  • Product Management

Key Points

  • New features development in a complex application
  • Technical advises on keys features of the application
  • Quality control via code reviews and best practices meetings
  • Accountable for technical onboarding of new customers
  • Onboarding automation tools design and project manager

DETAILS

Aletiq provides a "Product Lifecycle Management" SaaS solution which allows complex industrial products development to be managed and tracked online, mainly by storing documents, 3D plans and production batches traces. The startup was very early when I joined. I was the 2nd engineer on the team and we were 4 collaborators.

As the solution was quite early, the role mainly consisted on developing the key features of the applications from the draft product specification to the deployment, being accountable for maintenance and bug tracking. I also had the occasion to design databases, API, some back-end services as well as front-end components. This lead me to be one of the key person in charge in the company in technical terms.

I also performed the training of new employees with an extra attention on junior developers. I had the occasion the mobilize resources on some heavy projects I was accountable for. I advocated for best practices regarding several technical and management topics.

I was also the privileged interface with customer success, responsible for the technical part of the onboarding of new clients. Regarding this part of the role, I had the occasion to automate the whole technical part of the onboarding, saving us approximately a week on a 1 month onboarding, and allowing use to deploy hundreds Go. safely.

The automation back-office deployed was further extended in order to become a new part of the main application, providing our customer with a simpler interface and process for their onboarding.

Eventually, the startup grew to 20 people, raised funds, and I had more project management and technical advisor responsibilities, the role evolved from a full-stack engineer to a project manager with senior software responsibilities.

JOB
6 months
Paris, France

Develop web architecture on self-initiative and freelance projects

Full-Stack Architect

  • Git
  • VSCode
  • Notion
  • Web development
  • Javascript
  • Rust
  • Software design
  • System Design
  • MongoDB

Key Points

  • Web services architecture
  • Database architecture
  • System administration
  • Application design
  • Low level & performance oriented

DETAILS

As a full-stack architect, I had the opportunity to develop my skills in web development I order to by able to autonomously develop and deploy any kind of web architecture.

I deep dive into system design as well as Single Page Application front-end using React with NoSQL back-ends, using MongoDB. I deployed applications using a VPS that I currently manage in order to have full control on the deployment and perform experiments

One of my flagship project is a portfolio application, that generates a PDF resume and landing page from a database storing the necessary features. A back-office also allows me to quickly edit the portfolio in order to make it evolve with time. Changes are that you are currently reading content generated by this application ;)

JOB
4 years

Create a system specification language and associated tools from scratch

System Specification Language Inventor

  • Rust
  • Embedded Systems
  • Project management
  • Software design
  • System Specification
  • System Design
  • MBSE
  • Formal proof
  • Formal logic

Key Points

  • State-of-the-art watch on formal system specification
  • Design of a formal language with a graphic representation
  • Participate to conference on model based system engineering
  • Familiarize model based system engineering and formal proof tools
  • Develop a compiler to verify the correctness of specifications

DETAILS

As the inventor of a yet to be named specification language, I had the occasion to discover the world of Model Based System Engineering (MBSE) and formal proof for system engineering

The language allows to perform a formal description of the requirements of a system in order to establish it's functional specification in a formal fashion

The goal is to leverage state-of-the-art formal methods and MBSE tools to provide an efficient and formal way to verify if complex cyber-physical systems are designed to work without spending to much time and money on review and testing

Complex system such as trains, cars or planes could theoretically be described in the language

As a proof of concept I developed a compiler that performs basic verification on a system and compiles its specification into a human-readable pdf file

Illustration of System Engineer
JOB
5 months
Alstom
Saint-ouen-sur-seine, France

Design and requirement management on an automated subway solution

System Engineer

  • Embedded Systems
  • Project management
  • Software design
  • Physics
  • Maths
  • Digital mobility
  • Railway Signalling
  • Automated Subway
  • CBTC
  • System Specification

Key Points

  • Functional architecture and design specification
  • Requirement traceability and refinement
  • Preliminary software design
  • Verification and validation compliance
  • Change request analysis and troubleshooting

DETAILS

As a system engineer at Alstom, a famous rolling-stock manufacturer, I was able to take part of the development of the new CBTC system named Urbalis Fluence. It was waiting to be deployed in Shenzen's subway, line 20, in China, a high population density context.

Fluence is able to leverage train-to-train communication to increase the throughput of the line compared to previous automated subway technologies such as Urbalis U400. Fluence is meant to allow the circulation of a subway train each 30 seconds.

I participated in the automatic control design in collaboration with system architects, establishing behavior of the trains and the devices on the network. I presented the new system features to the software team in order to explain how these would work and discuss potential development issues.

I also managed traceability and refinement with high-level requirements with the signalling team as well as testing and satisfaction with the verification and validation team.

I specifically worked on the driver's cabin display in case of partially manual control, which happens quite often in the context of train testing and special train missions.

Illustration of Hardware Security Engineer
INTERNSHIP
6 months
Mines St-Etienne
Gardanne, France

Architecture and design of a state of the art hardware attack test bench

Hardware Security Engineer

  • Embedded Systems
  • C
  • Signal processing
  • Project management
  • FPGA Prototyping
  • Software design
  • Python
  • Zybo devices
  • Processor Design
  • Physical Hacking
  • Data Science

Key Points

  • FPGA co-design and hacking
  • Embedded software and serial communication
  • Client application for intensive computations
  • Technical and scientific documentation
  • IEEE HOST 2022 first place on best hardware demo

DETAILS

As a hardware security engineer at the "Systèmes et Architectures Sécurisés" laboratory of Mines St-Etienne, I was able to develop SCABox, an open-source test bench that evaluates the resilience of crypto-algorithms during side-channel attacks. The project is available on GitHub. Side-channel attacks are a relatively new way of hacking electronic devices by listening to the power consumption

I worked in collaboration with a research team that helped me to understand the side-channel attacks fundamentals and provided me with a proof of concept code which is subject to the publication of a research paper.

The bench provides FPGA power sensors that can be deployed on a remote server. It can perform attacks on the electronic board where it is located, for example Amazon servers, and communicate results to a client computer.

I was principal engineer, designing the whole solution from the proof of concept. It consisted of a hardware FPGA test bench on a Zybo device, a C driving application for the bench to launch attack, and a Python client application to remotely control the bench and process raw data in order to perform the attack, ie. retrieve the encryption key.

The succeeded in breaking the encryption key used by the famous OpenSSL's AES algorithm. We won the best demo award at the IEEE Host Symposium 2022.

INTERNSHIP
5 months
Oyst
Paris, France

Responsible for the integration of a payment solution at e-merchants

Project Manager Operations

  • Web development
  • Javascript
  • Project management
  • E-Commerce
  • Excel
  • Customer Success
  • Prestashop
  • Forestadmin
  • Product Management
  • Data Science

Key Points

  • Go-live and deployment planning
  • Continuous product improvement and bug tracking
  • Merchant account management and end-user support
  • Monitoring and analysis of operational metrics
  • Automation and procedures to reduce payment fraud risks

DETAILS

In the context of an award winning startup (LVMH innovation award 2018) providing a french payment solution similar to the now famous Amazon Pay, I had the occasion to manage the onboarding of new merchant

The role consisted mainly on ensuring the solution works perfectly on the merchant's E-shop, providing regular feedback on the onboarding status and raise the merchant concerns as well as contribute to bug tracking and continuous improvement.

I was also in charge of detecting payment fraud which was a highly sensitive topic and a difficult subject since a lot of transaction were happening everyday (around 200 per day). I decided to automate the fraud detection process by providing a script that leverage the companies knowledge on the topic of fraud in order to classify suspicious payment automatically. The response was very positive and the solution saved us about 1 hour a day.

Unfortunately, the startup went bankrupt during my internship so I did not had the occasion the finish it. However, living a bankrupt is a very strong experience a allows to learn a lot about startup success and failure

INTERNSHIP
8 months
xRapid
Aix-en-provence, France

Mobile application for the testing of an automated microscope

Software Architect

  • Embedded Systems
  • Signal processing
  • Project management
  • Software design
  • Artifical intelligence
  • Computer Vision
  • Mobile development
  • Swift
  • Bluetooth
  • System Design
  • Product Management
  • Data Science

Key Points

  • GO/NOGO evaluation for an iPhone driven microscope
  • Requirements, budget and planning alignment
  • Development of a iOs mobile application
  • Bluetooth interfacing and image processing
  • Responsible for code reviews and deployements

DETAILS

In the context of an academic project at Mines-St Etienne, I was able to contribute to the development of a validation bench for a microscope manufactured by the startup xRapid to automated medical diagnosis for mold contamination.

The validation bench performed a quality GO/NO GO test at the output of the microscope production facilities located in China.

I worked in a team of three engineering students during the, autonomous during the whole project, we established establishing the quality requirements, budget and planning, with the client company.

I participated in the development of the iOs application that paired with the microscope, using Bluetooth, to perform the test. I was notably in charge of the software architecture, ensuring quality and maintainability of the different software parts.

I also designed and developed the graphical user interface of the application as well as a displacement detection algorithm for the microscope stage based on OCR technology. It is a key component since to validates the precision of the microscope stage.

Unfortunately, the microscope was proven by our bench to not satisfy medical industry requirements, therefore forcing the startup to radically pivot.

Illustration of Open-source Developer
JOB
7 years 4 months
Mines St-Etienne

Software design and development on self initiative projects

Open-source Developer

  • Git
  • Web development
  • Computer graphics
  • Numeric simulation
  • Javascript
  • Rust
  • Java
  • Project management
  • Software design
  • Python
  • Physics
  • System Specification
  • Computer Vision
  • System Design
  • Game Development
  • Unity
  • C++
  • Jetbrains
  • Continuous Integration
  • Unit Testing
  • Django

Key Points

  • Self learning from MIT, Stanford and Harvard online lectures
  • Computer graphics, image processing, web development
  • Open-source simulations, games and code libraries
  • Continuous integration and agile development

DETAILS

As a software enthusiast ,I committed myself into several projects, in order to enhance my abilities in software development as well as to get introduced into scientific topics that interested me. Most of these projects are available on GitHub.

I am continuously searching to learn on new topics, and to develop prototype once I got an idea or learned something new

I followed online lectures, especially from MIT OpenCourseWare, In order to get deep into materials relation to my engineering graduation such as cryptography or algorithmic and data structures but also to get introduced to new programming languages and skills.

I also followed various lectures on scientific topics such as computer graphics, image processing or differential geometry when it was required by the projects I was working on. Often I was brought into reading academic papers

I developed most of the software projects using continuous integration and following agile development guidelines. Some of these are publicly available on package mangers such as npm and have more than 5000 downloads.

Illustration of Engineering School
EDUCATION
4 years
Mines St-Etienne
Gardanne, France

Top ten French engineering school oriented towards electronics and computer design.

Engineering School

  • Numeric simulation
  • Embedded Systems
  • C
  • Java
  • Signal processing
  • Microelectronics
  • Operational Research
  • Supply Chain
  • VHDL
  • Vivado
  • Modelsim
  • Strategic management
  • Project management
  • English
  • STM32 Microcontrollers
  • FPGA Prototyping
  • Spanish
  • Software design
  • Python
  • Physics
  • Maths
  • Artifical intelligence
  • Computer Vision
  • Excel
  • PostgreSQL
  • Processor Design
  • Data Science

Key Points

  • Toolbox for software and hardware engineering
  • Business and project management
  • Specialized in microelectronics design
  • Option information technology and supply chain

DETAILS

As a student at Mines St-Etienne, I had the occasion to acquire advanced scientific knowledge, develop technical skills as well as project and business management skills.

Mines-St Etienne is one of the top ten French engineering school, emphasizing on projects and multidisciplinary skills to provide a holistic view of the role of the engineer. I allows me to adapt myself easily and learn quickly in any kind of domain.

I had the occasion to get introduced to electronics, embedded systems and computer science. This provided me with a technical tool box to understand computers architecture, embedded and software systems.

I participated in several classes, projects and events such as startup weekends or serious games aimed at developing non technical skills, communication, management, strategy, project management and entrepreneurship.

I decided to major in microelectronics design, learning in 6 months how to design integrated circuits such as ASIC and how to perform prototyping using FPGA. I was also introduced to the semi-conductor physics and manufacturing of integrated circuits.

I minored in information technology and supply chain, learning about operational research, especially optimization using CPLEX.

EDUCATION
2 years
Lycée Paul Valéry
Paris, France

Participation in competitive exam for admission to top French Grandes Écoles, MPSI, MP

Intensive Preparatory Classes

  • Numeric simulation
  • Signal processing
  • Operational Research
  • English
  • Python
  • Mechanics
  • Physics
  • Maths
  • Data Science

Key Points

  • Advanced calculs, algebra and probabilities
  • Fundamental physics, mechanics and chemistry
  • Algorithms, data-structure and numerical simulation
  • Signal processing, solid mechanics, automatic control

DETAILS

The preparatory classes are a prestigious and notoriously hard way to prepare for the competitive exam for admission to french top engineering school. The exams are classified into several categories regarding the specialization of the students, for instance, I was specialized in math, physics and engineering science.

I had the occasion to build a solid basis in fundamental science and technology to pursue in engineering studies.

I look forward to meeting you !