Diogo Freitas

Embedded Software Engineer for Mobility and Transport Industries

My ultimate career goal is to shape the future of mobility and transport industries with cutting-edge technologies and user-centered solutions.


Experience

Embedded Software Engineer

Mannarino Systems & Software Inc.
  • Developed embedded software in C for electric motor inverter propulsion control of eCTOL and eVTOL aircrafts.
  • Debugged issues and measured runtime performance of the software the using Lauterbach TRACE32.
  • Analyzed worst-case execution time and rebalanced the bare metal scheduler to assure real-time deadlines were met.
  • Experimented Simulink and Embedded Coder configurations to generate C code compliant with the coding standard.
  • Reviewed and corrected code generation using static analyzer Helix QAC to generate MISRA compliant source code.
  • Wrote test procedures and implemented automated test scripts in Python for the verification of airborne software HLRs.
  • Drafted and reviewed HLRs, LLRs and software architecture documentation.
  • Achieved at least 50% reduction of execution time while refactoring one function from the in-house math library.
  • Investigated hypothesis of pipeline stalls, cache misses, and unintended linkage of object code.
  • Created life cycle data artifacts to support the fulfillment of DO-178C and DO-331 objectives applicable to DAL A software.
August 2023 - Ongoing
Fully remote

Embedded Software Engineer

Volvo Group
  • Developed embedded software for BMS (Battery Management System) at cell and pack level for electric trucks and buses.
  • Implemented production-grade software for battery state estimation algorithms from existing POCs.
  • Developed Diesel engine control functions using Model-Based Design (MBD) tools (MATLAB, Simulink and TargetLink).
  • Achieved 40% reduction in CPU load after refactoring existing functions. Also, helped to decrease memory footprint.
  • Developed Python scripts to automate time consuming tasks and deliver them 9x faster.
  • Implemented and tested CAN & SAE J1939 functionality using tools like ATI Vision, Vector CANoe and CANalyzer.
  • Refactored the drafts of Functional Safety Requirements for compliance with ISO 26262.
  • Analyzed data from connected vehicles already operating in the field to evaluate performance of our algorithms.
  • Tested the developed functions in open/closed loop verification environments using MiL (Simscape), SiL (GDB) and HiL (dSPACE) tools.
  • Assisted in-vehicle tests to validate engine functions (e.g. engine brake, cruise control, fuel economy).
  • Lectured a hands-on online training sessions to my peers (Git, Bitbucket, Regex).
  • Led innovation initiatives within the team (e.g. design thinking workshops, hack days).
May 2018 - August 2023
Curitiba, Brazil

Autonomous Driving Intern

ZF Group
  • Developed the embedded software controlling a medium-duty driverless tractor with SAE Automation Level 2.
  • Implemented application software using C to control vehicle speed, Power Take-Off (PTO) and hydraulic implements.
  • Designed from scratch an embedded software architecture for a brand-new general-purpose ECU.
  • Implemented Hardware Abstraction Layers (HALs) above low-level drivers supplied by the semiconductor vendors.
  • Developed embedded software using C to interface peripherals (e.g. CAN controllers, WiFi modules and SD cards).
  • Performed field tests of automated driving features in realistic conditions of a real-world environment (e.g. farms, test tracks).
March 2017 - March 2018
Friedrichshafen, Germany

IT Applications Trainee

ExxonMobil
  • Supported Software Development Life Cycle (SDLC) activities, including requirements, coding, testing & deployment.
January 2016 - March 2017
Curitiba, Brazil

Web Development Intern

GAMURS
  • Translated several web page designs into HTML documents styled with CSS and jQuery.
December 2014 - February 2015
Sydney, Australia

Education

Chalmers University of Technology

MicroMasters® in Emerging Automotive Technologies
128th place @ QS World University Rankings 2019
Relevant Coursework:
  • Model-Based Systems Engineering
  • Electric & Combustion Powertrains
  • Hybrid Vehicles
  • Automotive Safety
  • Sensor Fusion
July 2020 - December 2022
Online course by edX

Federal University of Technology Paraná (UTFPR)

Bachelor of Computer Engineering
49th place @ Times Higher Education Ranking 2018 Latin America
Relevant Coursework:
  • Embedded Systems
  • Operating Systems
  • Distributed Systems
  • Software Engineering
  • Computer Architecture
  • Digital Signal Processing Lab
  • Data Structures & Algorithms
  • Control Systems
  • Systems Security
  • Database Systems
  • Computer Networks
  • Programmable Logic
  • Digital Image Processing
  • Analog & Digital Electronics
Extracurricular Activities:
  • Teaching Assistant @ Introductory programming courses (C, C++, OOP)
  • Research Assistant @ Bug tracking research project
  • English conversation club
  • French language course
GPA: 0.7524/1.0
August 2011 - August 2018
Curitiba, Brazil

University of New South Wales (UNSW)

Study Abroad Program
45th place @ QS World University Rankings 2019
Relevant Coursework:
  • Robot Design
  • Software Construction
  • Artificial Intelligence
  • Embedded Systems Design
  • Microprocessors and Interfacing
  • Computing Applications for Mechatronic Systems
Extracurricular Activities:
  • UNSW Football Club
  • Hillsong ON Campus
March 2014 - November 2014
Sydney, Australia

Skills

Programming

C, MATLAB, Python (most familiar)
C++, JavaScript, ARM Assembly (least familiar)

Aerospace

DO-178C (most familiar)
DO-331, ARINC 653 (least familiar)

Automotive

CAN bus, UDS (most familiar)
MISRA, SAE J1939, AUTOSAR, ISO 26262 (least familiar)
Driving License Category D (non-articulated trucks and buses)

Tools

Git, Unix Shell, TRACE32, Helix QAC, Polarion, Vector CANalyzer (most familiar)
Vector CANoe, ATI Vision (least familiar)

Model-Based Design (MBD)

Simulink, Embedded Coder, Stateflow, Simscape (most familiar)
Simulink Check, Simulink Code Inspector, TargetLink (least familiar)

Verification

Requirements-based testing, X-in-the-Loop (Hardware, Software, Model).

AI

TensorFlow with Keras, scikit-learn, Pandas, NumPy, Seaborn, Matplotlib, Jupyter

Computing

Linux, TCP/IP stack, full-stack web development, SQL and NoSQL databases

Languages

Portuguese (native), English (fluent), Spanish (conversational)


Honours

Awards
  • 1st place @ Hackathon Copel Telecom
  • 2nd place @ Connecting to the IoT with NXP
  • 3rd place @ Twizy Contest: Renault Experience
  • Finalist @ SHIFT Hackathon MasterCard
  • Science Without Borders scholarship recipient
  • Patent WO2019081205

Projects

Electric Engine Inverter

Airborne software for electric propulsion control unit
Developed functions and infrastructure to spin the motor of an electric airplane.
August 2023 - Ongoing
95% remote
5% on-site in the USA

Battery Management System (BMS)

Battery management software for the lithium-ion batteries
Developed algorithms for state estimation, power management, diagnostics, safety monitors and other battery functions.
February 2022 - August 2023
Curitiba, Brazil

D13K Diesel Engine (Proconve P8)

Evolution of volvo’s heavy duty engine with 8% better fuel consumption
Participated on the development effort for the creation of new software strategies to control engine auxiliary systems.
October 2019 - February 2022
Curitiba, Brazil

Virtual Rigs

Test automation solution for scan tool
Virtual electronic architecture implemented in Vector CANoe to simulate ECU signals consumed by the automated tests.
September 2018 - October 2019
Curitiba, Brazil

Lindner TracLink Pilot - Copy & Paste

Self-driving feature (SAE Automation Level 2) for medium-duty farm tractors
Developed software to control:
  • Vehicle and engine speed
  • Power take-off (PTO) activation
  • Hydraulic implement
May 2017 - August 2017
Friedrichshafen, Germany

SmartFare

Data collecting and electronic ticketing system for public transportation
Awarded the 2nd place on a nationwide design contest of IoT applications promoted by NXP Semiconductors.
August 2016 - November 2016
São Paulo, Brazil

Mobile Robotics Algorithms

Algorithms implementing common robotic tasks in MATLAB
  • Calculating attitude angles (roll, pitch, yaw) with gyroscope data
  • Create a point cloud based in images from a depth camera (RGB-D)
  • Obstacle detection based in 3D point cloud
  • Localization algorithm using data association and triangulation methods
  • Estimation of robot heading angle in a global reference frame
  • Occupancy grid with obstacle detection
August 2014 - October 2014
Sydney, Australia

Real-time Systems Lab

Real-time instrumentation system for motor control using Embedded Linux (RTAI)
Achieved real-time constraints by loading customized kernel modules that implemented inter-process communication between two threads using a shared memory location. Object-oriented drivers were developed using C++ to interface peripherals like ADC, DAC and encoder.
August 2014 - October 2014
Sydney, Australia

3D Environment Scanner

Point cloud generator for internal environments
A device built to map internal environments and plot it in a point cloud custom software.
June 2013 - September 2013
Curitiba, Brazil

Courses

Aerospace
  • Introduction to DO-178C @ Mannarino
  • Introduction to ARINC 653 @ Mannarino
  • Aircraft Systems and Avionics @ Udemy

Automotive
  • ISO 26262 (Software, Testing and Hazard Analysis) @ Volvo Group
  • High Voltage Systems of Electrified Vehicles @ AEA
  • Safety for Hybrid and Electric Vehicles @ AEA
  • Introduction to Autonomous Vehicles @ AEA
  • Introduction to Automotive Cybersecurity (ISO 21434) @ Volvo Group
  • Product Cybersecurity - Threat Analysis Risk Assessment (TARA) @ Volvo Group
  • Diesel Engine Fundamentals @ Volvo Group

Data Science
  • Data Science and Machine Learning Bootcamp @ Udemy

Tools
  • Model a Car and Design a PID Controller in MATLAB/Simulink @ Udemy
  • Vector CANoe Basics @ Volvo Group
  • Simscape Onramp @ Mathworks

Agile
  • Scaled Agile Framework (SAFe®) @ Volvo Group
  • Scrum Training & Simulation @ ExxonMobil

Programming
  • Programming with C# @ edX (by Microsoft)
  • Programmable Logic and VHDL @ UTFPR (master's level)
  • Ruby, HTML & CSS, jQuery @ Codecademy
  • Introduction to Software Testing @ Coursera (by University of São Paulo)

Innovation
  • User-centered Design @ ExxonMobil

Volunteering

Latin American Festival of Free Software Installation (FLISoL)

Course Instructor
Activities:
  • Lectured a introductory course to Regular Expressions (regex).
April 2025
Curitiba, Brazil

Barco Sorriso

Volunteer
Activities:
  • Supported a group of dentists who travel by boat to provide free dental care to remote riverside communities with poor access to health services.
August 2022 - Present
Guaraqueçaba, Brazil

Presbyterian Church of Brazil

Deacon & Head of Events
Activities:
  • Served as deacon of my local church.
  • Planned, managed and executed social events of the church, with 5-digit budgets.
  • Developed a quiz buzzer machine to be used in activities with the kids.
March 2022 - February 2025
Curitiba, Brazil

NASA International Space Apps Challenge

Hackathon Mentor
Activities:
  • Provided technical mentorship to teams working in embedded systems & IoT projects.
October 2019
Curitiba, Brazil

Free Software Technology Forum (FTSL)

Course Instructor
Activities:
  • Lectured a introductory course to the Perl programming language.
September 2018
Curitiba, Brazil

Students@ZF

International Team Member
Activities:
  • Organized recreational events to integrate ZF’s interns and to promote networking.
April 2017 - December 2017
Friedrichshafen, Germany

Farol da Madrugada

Volunteer & Translator
Activities:
  • Spread a life-changing message of hope to marginalized people wandering the streets after midnight.
  • Coordinated and revised the translation of the organization’s website and flyers to English.
September 2011 - March 2016
Curitiba, Brazil

Hillsong Church

Welcome Lounge Team Member
Activities:
  • Welcomed and connected newcomers in church.
March 2014 - November 2014
Sydney, Australia

Assembly of God Church

Youth Assistant Leader & Media Team Member
Activities:
  • Developed a quiz buzzer machine for activities at the youth group.
  • Planned and executed activities for teenagers at the annual youth camps.
  • Operated the media projector during services.
October 2012 - October 2016
Curitiba, Brazil

Interests

Professional interests
  • Airborne Software & Avionics
  • Electromobility
  • ECU software development
  • Autonomous vehicles
  • ADAS
  • Connected cars (V2X)
  • Intelligent Transportation Systems
Recreational interests
  • Travel
  • Football
  • Movies & TV Series
  • Christianity
  • History
  • Economics
  • Wine, Beer & Cocktails