Fabio Terrile
Verified Expert in Engineering
Software Developer
Avegno, Liguria, Metropolitan City of Genoa, Italy
Toptal member since February 16, 2021
Fabio is a senior software developer with over 25 years of experience who can independently follow all design and implementation steps. He is apt to learn quickly and effectively in a fast-paced, rapidly changing environment. Fabio is looking for new professional experiences in the software and hardware fields, including but not limited to embedded hardware, software, HDL design, and desktop, server, and communication services.
Portfolio
Experience
Availability
Preferred Environment
Linux, C, C++, Circuit Design, Embedded Development, Firmware, FPGA, Electronic Engineering, Windows, GNU Toolchain
The most amazing...
...project I've started is custom motion control firmware for ALMA OSF in the Atacama desert at 9,500 ft elevation, exposed to sandblasts and a very high UV index.
Work Experience
Software and Hardware Engineer
Freelancer
- Developed an embedded application (Linux operating system) for a vacuum controller that monitors air pressure and computes setpoints or activation for one to many vacuum pumps.
- Created an embedded application (barebone ARM) to automate oxygen breath pressure supply.
- Designed the hardware (schematics, PCB, and prototypes) and HDL of a software-defined radio capable of running several wireless protocols, targeted as a radio base station for 2G/3G microcells.
- Developed HDL for an audio custom equipment testing solution.
- Created a configurator for ASAM XCP protocols, targeting automotive ECUs.
- Worked on developing a high-performance data stream decoder for ASAM XCP-based DAQ data streams.
- Developed the firmware and software for embedded device communication through WebUSB and Web Serial API.
- Oversaw the firmware development for a water infrastructure IoT monitoring device, with sensor optimization onboard an ML and Azure IoT Hub connection.
- Developed 400G network equipment on AMD Versal FPGA.
Senior Software Engineer
Phase Motion Control S.p.a.
- Designed and developed software and hardware of an electric vehicle smart charging DC controller, supporting ISO 15118 and CHAdeMO technologies as well as V2G.
- Developed a new generation of C language programmable motion control platform, scaling from an electronic-integrated servo motor to a stand-alone electronic inverter.
- Developed a generic purpose high-performance IEC languages programmable motion control embedded platforms for brushless motors.
- Performed software design and development of high-performance compact electronic-integrated servo motor using Altera Quartus.
- Conducted IT infrastructure planning, management, and deployment in an ESXi virtual infrastructure environment, both Linux and Windows-based.
Electronic and Software Engineer
Telefonica Movistar
- Served as a data recording engineer for the competition motorcycle in the FIM Road Racing World Championship Grand Prix, 125cc class.
- Conducted data recording equipment planning and management and harness design and construction.
- Developed a prototype of a fly-by-wire throttle servo system (hardware and software), integrated with data recording equipment and engine electrical management equipment.
- Planned the IT infrastructure and deployed and maintained the systems based on both Linux and Windows.
Electronic and Software Engineer
LCR Honda MotoGP
- Acted as a data recording engineer for competition motorcycles in the FIM Road Racing World Championship Grand Prix, 125cc class.
- Served as a recording equipment planner. Managed the processes and designed and constructed harnesses.
- Developed hardware and software of a system to manage the liquid cooler temperature of the internal combustion engine.
- Created hardware and software for a multifunctional dashboard for the rider.
- Managed the IT infrastructure planning, deployment, and maintenance for Linux and Windows.
Electronic and Software Engineer
2D Debus & Diebold Meßysteme GmbH
- Developed hardware of a programmable multifunction dashboard based on the CAN bus.
- Developed firmware of the multifunctional dashboard starting from the existing prototype, adapting and bringing it to the production stage.
- Oversaw the electronic prototyping and measurements for the multifunctional dashboard.
Software Developer | IT Manager
Lercari S.r.l.
- Developed an insurance expertise management application.
- Built an SQL database for the management application.
- Deployed and maintained the overall IT infrastructure that ran the management application.
Experience
Electrical Vehicle Smart Charging DC Controller
Power-fail Safe Flash Memory Filesystem
Programmable Power Conversion DSP
Ethernet-based Fieldbus
Servodrive for Distributed Torque Control
Fly-by-wire Throttle Servo System
Domotic Android App Ecosystem
A home server can send status and exception notifications to the devices through the Google Firebase platform and a local SMS gateway as a backup; both technologies are in-app managed.
Authentication and security are done through HTTPS on Apache web server, with required SSL client certificate as device authentication. The home server has a web server as a back end. PHP scripts deal with local daemons that perform management and gateway to home devices; it also deals with the local MySQL database supporting the ecosystem.
Software-Defined Radio Module
The system comprises a USB 3.1 front end connected to an FPGA for data transformation, filtering, and actuation on the RF front-end. The first step was the hardware design, from schematic to PCB routing, through manufacturing facilities for PCB assembly mounting, up to laboratory testing for initial specification matching; the second step was coding the HDL for the FPGA, compliant with USRP devices to be compatible with GNU radio.
Although such a device can run several wireless protocols, the target application was a radio base station for 2G/3G microcells and planned 4G.
Custom Audio Testing HDL
It was developed on the client's custom hardware, with a Xilinx Artix-7 FPGA as the computing core. The application was supported with an external PC, connected via USB or 1G ethernet; the connections were fully managed via the FPGA. The development was HDL for the FPGA and C++ on PC, where the scope was creating an API interface for the client's supervisor software.
400G Network Equipment
Education
Master's Degree in Electronic Engineering
University of Genoa - Genoa, Italy
High School Diploma in Information Technology
Istituto Tecnico Industriale Don Bosco - Genoa, Italy
Skills
Libraries/APIs
Sockets
Tools
Microsoft Visual Studio, Iptables, Altera Quartus, Microsoft Visual C++, GNU Toolchain, Visual Studio, Git, OrCAD, GNU Make, PCB Layout, GNU Debugger (GDB), Eclipse IDE, Apache, C#.NET WinForms, TwinCAT PLC
Languages
C, C++, Verilog HDL, Assembly, Visual Basic, Embedded C, Embedded C++, C++11, Verilog, Bash Script, SQL, Visual Basic for Applications (VBA), JavaScript, Java, PHP, C#, C#.NET, Python
Frameworks
Realtime, .NET, Boost, .NET 5
Paradigms
Concurrent Programming, Desktop App Development, ASAM XCP
Platforms
Linux, Windows, Embedded Linux, STM32, Windows Server, Android, Docker
Storage
Databases, JSON, MySQL
Other
CAN Bus, Networking, Motion Control, Embedded Software, FPGA, Software, Digital Design, Ethernet, Embedded Systems, Real-time Embedded Systems, ARM, MCU, Real-time Operating System (RTOS), Bootloaders, IPv4, IP Routing, Transmission Control Protocol (TCP), TCP/IP, UDP, ARP, NAT, Information Technology, Client/Server Networking, Computer Networking, Industrials, Industrial Protocols, Industrial & Manufacturing, Intel Quartus Prime, Programmable Logic Device (PLD), Circuit Design, Electrical Engineering, Motor Control, Electronic Sensors, Hardware, ARM Embedded, DLL, Microcontroller Programming, Microcontrollers, Embedded Development, Firmware, Routing, Electronic Engineering, PID Controllers, Embedded Hardware, Multithreading, Electronics, ARM Architecture, PCB Design, DSP, IEEE 802.3, APIs, Encryption, SSL, SSL Certificates, SSL Configurations, PCB, PCB Functional Testing, SSH, ICMP, DNS, BIND DNS, Scripting, Xilinx Vivado, Xilinx Artix-7, Internet of Things (IoT), USB, BSP, HomePlug Green PHY, Data Compression, User Interface (UI), Video Streaming, SMS Gateways, Bluetooth, Radio, Software-defined Radio (SDR), Xilinx Spartan, Audio
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring