Summary
Overview
Work History
Education
Skills
Websites
Affiliations
Certification
Languages
Timeline
Projects
Hobbies and Interests
Generic
Balkis Diari

Balkis Diari

Breda

Summary

Experienced with developing and maintaining embedded systems software. Utilizes C/C++ programming and debugging to enhance system functionality, while demonstrating autonomy, effective collaboration, and problem-solving abilities.

Overview

5
5
years of professional experience
1
1
Certification

Work History

Embedded Software Engineer

Scentronix BV
10.2024 - Current

Developed and maintained firmware for hardware testing, device communication, and performance improvements:

  • Developed and maintained firmware for hardware testing and flashing, ensuring reliability through updates and fixes.
  • Diagnosed and resolved embedded system stability issues to improve performance.
  • Created a Raspberry Pi-based logger to capture real-time device communication.
  • Collaborated with hardware team to review and approve changes for firmware compatibility.
  • Enhanced technical documentation for clarity and maintainability.
  • Managed version control with Git/GitLab, performing code reviews and validating build artifacts for firmware flashing.


Keywords: C/C++, Python, Embedded Linux, Raspberry Pi 4, STM32G491, STM32F303, RS485, UART, USART, Debugging, Firmware Development, STM32CubeIDE, STM32CubeMX, STM32CubeProgrammer, Git/Gitlab, Agile Scrum, Scrum Methodology.

Embedded Software Engineer

STMicroelectronics
11.2022 - 09.2024

Contributed to the development, testing, validation, and maintenance of STM32 microcontroller drivers during the development phase:

  • Developed HAL and LL drivers for STM32 internal peripherals (EXTI, PWR, DMA, HSEM).
  • Developed functional and exhaustive verification tests for FPGA and silicon validation.
  • Tested and validated internal peripherals for various STMicroelectronics products, generating detailed reports.
  • Analyzed and debugged C code structures for test scenarios, understood test objectives and corrected errors to validate microcontrollers.
  • Resolved Bugzilla tickets.
  • Improved and measured code coverage using LDRA through static and dynamic analysis (LDRA Testbed).
  • Ensured driver quality by applying MISRA C guidelines, CodeSonar static analysis, and CodeSpell checks.
  • Used Git to manage repositories, clone product baselines, and submit changes via Gerrit.
  • Integrated XML files for each internal peripheral into the Jenkins execution flow to support automation pipelines.
  • Prepared quality documentation.
  • Contributed to internal knowledge sharing across teams.
  • Collaborated effectively in team while demonstrating strong autonomy and initiative.
  • Conducted code reviews.


Keywords: STM32, Cortex-M33, Cortex-M85, Embedded C, C/C++, HAL/LL Drivers, EXTI, PWR, DMA, HSEM (Hardware Semaphore), IAR Embedded Workbench, STM32CubeMX, STM32CubeProgrammer, LDRA Testbed, Git, Gerrit, Cube 2.0

Graduation internship

ELCO Solutions
03.2022 - 08.2022

Firmware Update over TCP – Bootloader Implementation:

  • Established reliable TCP connections to securely transfer firmware data.
  • Programmed the TM4C129 microcontroller to act as a TCP client for receiving firmware images.
  • Developed and tested client-server socket communication using C# (.NET) and C/C++.
  • Designed and implemented a bootloader to support firmware updates over TCP/IP.
  • Utilized Code Composer Studio and Visual Studio for development and debugging.


Keywords: C/C++, C#, .NET, Socket Programming, TM4C129, Bootloader, TCP/IP, Code Composer Studio, Visual Studio

Summer Internship

Med'In Outlook
07.2021 - 08.2021

Design and Development of an Electrostimulator using STM32:

  • Designed and developed an electrostimulator system based on the STM32F429 Discovery board.
  • Created user interface screens using TouchGFX for real-time interaction.
  • Implemented button functionality and system logic using STM32CubeIDE and C/C++.
  • Controlled output stimulation signals through the designed UI and verified real-time behavior.
  • Tested and refined circuit performance to enhance product reliability and user experience.


Keywords: STM32F429 Discovery, TouchGFX, STM32CubeIDE, C/C++, Embedded UI, Signal Control

Summer Internship

Sagemcom
07.2020 - 07.2020

Exposure to the Full Design and Testing Cycle of Smart Meters:

  • Observed and followed the complete development lifecycle of smart meters, from hardware design to final testing.
  • Gained insight into various functional and validation tests applied to PCBs and meter counters.
  • Familiarized with industry standard procedures and test environments for embedded energy systems.


Keywords: Smart Meters, Design Lifecycle, PCB Testing, Validation, Embedded Systems

Education

M.D. - Electronics Engineering

Faculty of Sciences of Tunis
02-2023

Bachelor Degree - Electronic, Electrical and Automation

Faculty of Sciences of Monastir
01.2019

Mathematics Baccalaureate Certificate - undefined

Mezzouna's High School
01.2016

Skills

  • Programming languages: C/C, Python, C#, assembly(x86)
  • Platforms: STM32, Raspberry Pi, TM4C, Arduino, PIC
  • Communication protocols: TCP/IP, I2C, UART, SPI, CAN
  • Operating systems: Raspbian, Ubuntu/Linux, Windows
  • Hardware Description Language: VHDL
  • Softwares: IAR Workbench, LDRA testbed, STM32CubeProgrammer, Code Composer Studio, STM32CubeIDE, TouchGFX, Thonny, microC, Proteus ISIS, VisualStudio, Matlab/Simulink
  • Methods: Agile / Scrum, V Cycle
  • Configuration management tools: Git, GitLab, Gerrit
  • Soft skills: Time Management, Adaptability, Team Collaboration, Problem Solving, Continuous Learning

Affiliations

  • Member in MicroDesign club
  • Member in Robotics IngENIM club

Certification

  • Scrum Master Certified (SMC) SCRUMstudy -Accreditation Body for Scrum and Agile Granted date: May 14, 2024 Expiry date: May 14, 2027 ID: 1031703
  • Scrum Fundamentals Certified (SFC) SCRUMstudy -Accreditation Body for Scrum and Agile Granted date: May 07, 2024 ID: 1030873
  • Develop in Embedded C OpenClassrooms Granted date: February 19, 2024 ID: 3493537250
  • Public speaking OpenClassrooms Granted date: February 11, 2024 ID: 5858805434
  • Learn to program in C OpenClassrooms Granted date: February 10, 2024 ID: 6407077106
  • AI objective: learn about artificial intelligence OpenClassrooms Granted date: November 6, 2021 ID: 3137376456

Languages

English Advanced
French Advanced
Arabic Fluent
Spanish Beginner

Timeline

Embedded Software Engineer

Scentronix BV
10.2024 - Current

Embedded Software Engineer

STMicroelectronics
11.2022 - 09.2024

Graduation internship

ELCO Solutions
03.2022 - 08.2022

Summer Internship

Med'In Outlook
07.2021 - 08.2021

Summer Internship

Sagemcom
07.2020 - 07.2020

Bachelor Degree - Electronic, Electrical and Automation

Faculty of Sciences of Monastir

Mathematics Baccalaureate Certificate - undefined

Mezzouna's High School

M.D. - Electronics Engineering

Faculty of Sciences of Tunis

Projects

Real time Calendar

Keywords: STM32F429 Discovery, Keil, C/C++, I2C

  • Configured I2C registers to interface with the DS3231 Real-Time Clock (RTC) module.
  • Implemented functions to read from and write to the RTC's I2C registers, allowing real-time tracking and adjustments of calendar data.
  • Displayed real-time date and time using values retrieved from the DS3231 module.



Security System

Keywords: Raspberry Pi 3, Raspbian, Thonny, Python3, Picamera2, yagmail, command line

  • Set up the Raspberry Pi and install Raspberry Pi OS.
  • Installed Picamera2 and yagmail.
  • Configured hardware, including the PIR sensor and camera.
  • Detect the mouvement using PIR sensor (HC-SR501).
  • Captured a photo upon motion detection using the Picamera2 library.
  • Sent an email containing the captured photo using yagmail.



Remote controlled automatic watering system

Keywords: STM32F429 Discovery, STM32CubeMX, C/C++

  • Configured GPIO, RCC, NVIC, and USART peripherals via STM32CubeMX.
  • Programmed sensor interfacing and system logic using STM32 HAL libraries.
  • Implemented UART-based communication with an Android app through a Bluetooth module (HC-05), including data parsing, error handling, and synchronization.
  • Addressed connectivity issues to ensure reliable bidirectional communication.
  • Enabled autonomous pump control with manual override via mobile interface.



Didactic model of electric energy generation and movement transmission

Keywords: PCB card, Arduino Uno, Proteus ISIS

  • Developed a system for converting muscle energy into electrical power, demonstrating the principles of energy generation and transmission.
  • Engineered and implemented a custom PCB for efficient voltage regulation to ensure stable energy output.
  • Integrated an Arduino Uno to accurately measure and display wheel speed and turn count, showcasing real-time data processing and control.

Hobbies and Interests

Sport, Photography
Balkis Diari