Flavio Alves, Software Developer in Mogi-Guaçu - São Paulo, Brazil
Flavio Alves

Software Developer in Mogi-Guaçu - São Paulo, Brazil

Member since October 31, 2017
Flavio is experienced in embedded software development with 15+ years in projects of electronic equipment for several industries including medical equipment, telecom, networking, retail, and transportation. With solid experience in Linux operating systems, C/C++, C#, and Python operating systems, he enjoys working on industrial and internet of things (IoT) solutions running in web systems, desktop, and embedded devices.
Flavio is now available for hire

Portfolio

  • FedCMS
    C++, Bash, Linux, Ubuntu, VMware, OpenWRT, Qt, Embedded Software, Python, Flask
  • AtlasCopco (via Toptal)
    Qt, PyQt, Linux, MQTT, Internet of Things (IoT), C++, Python
  • Phi Innovations
    FreeRTOS, Altium, C, STM32, Microcontrollers

Experience

Location

Mogi-Guaçu - São Paulo, Brazil

Availability

Part-time

Preferred Environment

Python, Linux, C++, Embedded C, Embedded Linux

The most amazing...

...software I've implemented was for a Brazilian retail solution that validates and sends sales receipts between the POS and server, running in 20,000+ devices.

Employment

  • Senior Software Engineer

    2020 - PRESENT
    FedCMS
    • Customized an OpenWRT operating system for specific networking products. Added support for VPN configurations on a custom OpenWRT operating system.
    • Implemented a custom Linux image responsible for monitoring network activity between several components of security desktop equipment.
    • Implemented the user interface using the Qt library and back-end services implemented in Bash scripts and Python.
    • Worked on software management and repository using GitLab service.
    Technologies: C++, Bash, Linux, Ubuntu, VMware, OpenWRT, Qt, Embedded Software, Python, Flask
  • Senior Software Developer

    2020 - PRESENT
    AtlasCopco (via Toptal)
    • Implemented production software for remote intelligent control of machines remotely in real time using C++ language running in an embedded Linux environment and the MQTT protocol for M2M communication.
    • Worked on the initial development consisting of a proof-of-concept software (PoC) running in Python and a prototype (MVP) to validate the product concept using Python language and the MQTT protocol for M2M communication.
    • Implemented a control algorithm simulation environment using C++ and Qt framework for a visual representation of the results.
    • Performed software management in the Azure DevOps environment, using Git repositories and ticket management. Azure pipelines were used for continuous integration.
    Technologies: Qt, PyQt, Linux, MQTT, Internet of Things (IoT), C++, Python
  • Embedded Systems Engineer

    2018 - PRESENT
    Phi Innovations
    • Designed the hardware of the Industrie 4.0 gateway using the internet of things technologies.
    • Contributed to firmware development using C and STM32.
    • Handled software documentation and manual elaboration.
    Technologies: FreeRTOS, Altium, C, STM32, Microcontrollers
  • Senior Engineer

    2019 - 2021
    Kärcher Brasil
    • Implemented plastic injection machine system monitoring using C# language. The objective of the application is to automate inventory input and production line performance evaluation.
    • Implemented server software responsible for reading data from the client using an MQTT protocol and save the production data in a Microsoft SQL server database.
    • Implemented acquisition software, collecting data from machines using the OPC Data Access protocol and sending the parameter to the server using the MQTT protocol.
    • Used GitHub for software development management and repository.
    Technologies: OPC Data Access, MQTT, C#, SQL Server 2008
  • Advisor

    2020 - 2020
    Global Security Network (via Toptal)
    • Evaluated the key technologies to be applied to an industrial IoT security application.
    • Created the software architecture document and a complete requirements specification to be used as a base for new product development.
    • Wrote the documentation used by the client to continue the development activities.
    Technologies: Industry 4.0, Writing & Editing, C++, Linux, Internet of Things (IoT), OPC UA
  • Embedded System Engineer

    2019 - 2020
    Balestro
    • Designed the hardware for a surge arrester monitor communication module using LoRa Wireless communication, STM32 CPU, and Altium Designer.
    • Developed firmware using C, STM32, and FreeRTOS as part of my role.
    • Created a desktop application for data presentation using C# and WPF.
    • Implemented production tests and validation procedures.
    • Elaborated on the technical documentation, hardware, and software.
    Technologies: C#, C, LoRa, STM32, Altium Designer, Microcontrollers
  • Embedded Systems Engineer

    2019 - 2019
    Dormakaba
    • Designed the hardware for the console interface of access control equipment in Altium Designer.
    • Developed the firmware in STM32 using C language.
    • Led and handled product validation and testing as part of my role.
    • Implemented desktop software for hardware testing in C#.
    Technologies: C, STM32, Altium Designer
  • Embedded Systems Engineer

    2017 - 2019
    Brazilian National Synchrotron Light Laboratory (via Phi Innovations)
    • Developed a new motion control system—composed of hardware and software—to be used in newer Brazilian Synchrotron Light Accelerator Laboratory experiments. The equipment employs high-precision stepper motors and real-time control operations.
    • Led a four-person team composed of a hardware engineer, a senior Linux software engineer, a senior embedded software engineer, and a QA analyst. I was responsible for the control software development and also for software architecture and technology.
    • Deployed ROS middleware on an embedded Linux environment in a new stepper-motor controller application. Implemented specific nodes and services to manage particular hardware features of the new equipment using C++ language.
    • Implemented basic validation applications for using the new product, to be run as external nodes, using C++ and Python. Also, implemented low-lever actuation software using C++ and STM32 microcontrollers.
    Technologies: PyQt, Python, Qt, Robot Operating System (ROS), Altium Designer, C, STM32
  • Team Leader and Software Engineer

    2017 - 2019
    Gertec (via Phi Innovations)
    • Designed a solution for remote monitoring fiscal device equipment installed in point of sale (PoS) devices in retail. The system collects real-time data operation from the devices and provides operational status in a cloud-based dashboard using IoT.
    • Led a three-person team composed of a web software engineer, a desktop software engineer, and a QA analyst. I was responsible for the platform set up and software deployment and also for implementing software architecture and technology.
    • Performed periodic follow-up meetings with the team and periodic meetings with the client's product management team, responsible for the user interface design and system deployment in the field.
    • Owned the monitoring of 50k+ devices in real time in the Brazilian market with the system currently in operation.
    Technologies: Internet of Things (IoT), JavaScript, C++, MongoDB, Node.js, Qt, Team Leadership, Product Development
  • Embedded System Designer

    2018 - 2018
    Phi Innovations
    • Added Bluetooth support for the current PHI-Gateway product using the ST BlueNRG product.
    • Added BLE stack into the main firmware in C language.
    • Integrated the main firmware used to collect data from sensors using BLE technology.
    • Improved the product by adding additional features for custom projects.
    Technologies: Bluetooth
  • Team Leader

    2016 - 2018
    Prolife (via Phi Innovations)
    • Designed the next generation of multi-parametric monitors manufactured by the company, replacing a third-party design for proprietary in-house technology. The equipment is in production and being used as a base for a new product line for the company.
    • Owned the system design, evaluating the current market system architecture, and proposed a new project using the best solution considering state-of-the-art technologies and competitive manufacturing costs.
    • Led a team of four people: a hardware engineer, a Python application engineer, an embedded Linux engineer, and a QA analyst. Performed periodic follow-up meetings with the team and also with the client's product management team.
    Technologies: Linux, C++, Qt, Hardware, STM32, Altium, Product Development, Team Leadership
  • Embedded System Engineer

    2017 - 2017
    British American Tobacco (via Phi Innovations)
    • Developed a solution for purchase monitoring in point of sale (POS) locations. Data is collected from keyboard and barcode scanners, stored internally, and sent to a remote server.
    • Developed software using C++ and Qt for an ARM Linux-based processor.
    • Integrated hardware with a keyboard and integrated a cellular phone module to the hardware.
    • Handled software validation and technical support during deployment in the field.
    Technologies: C++, Wireless, ARM, Qt, Linux
  • Senior Software Developer

    2016 - 2017
    Baumer
    • Developed control software for ventilatory anesthesia equipment.
    • Implemented control software and sensor acquisition management using hard real-time software techniques and tools.
    • Contributed to the product launch on the market and deployed it in hospitals in Brazil.
    Technologies: FreeRTOS, STM32, C, Microcontrollers
  • Software Engineer and Team Leader

    2016 - 2017
    Gertec (via Phi Innovations)
    • Designed a next-generation terminal acquisition device used in retail stores. The new product extended keyboard acquisition features, adding computational and connectivity features to the computer peripheral.
    • Led a team of four people consisting of a hardware engineer, a Python application engineer, an embedded Linux engineer, and a QA analyst.
    • Performed architecture evaluation code review, features development, and software maintenance when applied.
    • Handled periodic interaction with the customer for project progress reporting, features evaluation, design review, and mechanical integration.
    • Applied agile techniques using Redmine and GitLab as software platforms for code repository, bug tracking, and documentation.
    Technologies: Flask, SQLite, Python, Embedded Linux, C, Linux Device Driver, Hardware, Team Leadership, Product Development
  • Software Engineer

    2015 - 2017
    Monivox (via Phi Innovations)
    • Implemented a radio over IP (RoiP) solution to integrate two push-to-talk (PTT) radio solutions remotely.
    • Developed software in Python, running on an embedded computer using an ARM CPU and customized Debian distribution.
    • Implemented parameters with an SQLite database and web interface in Flask.
    • Provided technical support during product deployment and operation. Corrected bugs and implemented new features.
    Technologies: Flask, SQLite, Embedded Linux, Python
  • Software Engineer and Team Leader

    2014 - 2016
    Samsung SDS (via Phi Innovations)
    • Designed a custom tracker integrated into a lock to be installed in containers. The purpose is to keep track of the container movements inside a warehouse and its trajectory from the warehouse to distribution facilities.
    • Led a team of five people: a hardware engineer, a mechanical designer, an embedded software engineer, a web software engineer, and a QA analyst. Also worked as a software engineer on the project.
    • Owned the management of the project progress and features. Performed periodic meetings with the team using agile methods and meetings with the customer team for follow-up reports and review requirements.
    • Delivered hundreds of units of the rump-up production of the device and the monitoring system used to keep track of the containers.
    Technologies: FreeRTOS, 2G, GPRS, GPS, M2M, STM32, C, Team Leadership, Product Development
  • Team Leader and Software Engineer

    2011 - 2016
    Gertec (via Phi Innovations)
    • Designed a new fiscal device monitoring equipment operating in 100K+ point of sales systems in Brazil. The device was responsible for generating the fiscal receipt used by the POS system to conclude a purchase in markets and retail stores.
    • Owned the device architecture, from hardware to embedded software. Evaluated the government requirements to create the complete architecture. Handled the hardware design considering manufacturing costs and the required performance for the product.
    • Led a team of four people: a hardware engineer, an application software engineer, an embedded Linux engineer, and a QA analyst. Owned the implementation of features in the application software.
    • Spearheaded the agile leading product development with the client's product team, performing follow-up meetings and communication with external stakeholders, particularly homologation entities and government staff responsible for requirements.
    Technologies: C++, Linux, ARM, Altium, Hardware, Team Leadership, Product Management
  • Senior Software Developer

    2006 - 2008
    Ingenico Group
    • Developed software for payment terminals manufactured by the company. I was part of a group responsible for the software development of Ingenico unities outside Brazil. I was also responsible for software projects for the German market.
    • Managed software using Redmine bug tracker, subversion source control, and Mediawiki for documentation.
    • Migrated software for a new Telium platform of major components of the German payment application software.
    Technologies: Python, C
  • Electronic Engineer

    2004 - 2006
    Omnisys Engenharia (Thales Group)
    • Contributed to hardware development for the CBERS 3&4 remote surveillance satellite program. Responsible for the design of telemetry, telecommand, and digital input interface.
    • Designed hardware using the Orcad tool, microcontroller firmware development, and documentation based on Brazilian's space agency (INPE) processes.
    • Deployed an engineering model of the three subsystems during my period on the project. The satellite was launched on September 12, 2013, and July 12, 2014.
    Technologies: OrCAD, Hardware, C

Experience

  • A Central Control Software to Remotely Operate Industrial Machines

    Currently, industrial machines contain their own control software installed in each machine. A central controller was created to allow remote control of several machines interconnected in order to provide the best performance in the production line, and also increase power consumption.

    This software was developed in C++, running on an embedded Linux environment and using IoT technology (MQTT protocol) for machine-to-machine communication.

    I was responsible for the complete development, identifying the external components of the system to which the system will interact, implement the control loop based on the requirements, migrate the control algorithm to embedded software format.

  • Industrie 4.0 Remote Monitoring of Machines and Industrial Processes

    Designed and implemented a complete solution for industrial plant floor processes monitoring.

    The solution is composed of proprietary hardware using STM32, internet of things technologies (wireless and cellular), ethernet, and RS485 implementing industrial protocols such as MODBUS, OPC, and so on. When connected to the internet or intranet, the equipment uses MQTT protocol to send sensor information for the IoT platform or proprietary monitoring software.

    I was responsible for the hardware design using Altium Designer, firmware development in C and FreeRTOS using Atollic TrueStudio, desktop software using C# and WPF and a server MQTT software for data collection, and receival for alarm and reports generation using C#.

  • Surge Arrester Remote Monitor Using IoT

    A surge arrester is an important piece of equipment in electric substation installation. It is responsible for protecting the facility against high-power electric discharge.
    In order to check if the surge arrester is in a good state or not, equipment installed locally is placed and the operator must go near the surge arrester to perform this verification, which is very risky.
    The company is a Brazilian manufacturer of surge arresters and monitoring equipment. My activity was to design a solution based on IoT technologies to automate the reading of surge arresters' status remotely.
    Two electronic devices were designed: one installed on the surge arrester local monitor and the other a USB-dongle device to be used by the operator to collect from one or more monitors in the substation.
    We used wireless LoRa technology, an ARM-based microcontroller (STM32) in C language, and a QT-based application in C++ language to work as a human-machine interface (HMI) and data storage.

Skills

  • Languages

    Embedded C++, C, C#, Embedded C, C++, Python, Bash, JavaScript
  • Frameworks

    Qt, Windows Presentation Foundation (WPF), Flask
  • Libraries/APIs

    POSIX, STM32Cube, Altium, PyQt, Node.js
  • Tools

    Eclipse IDE, Altium Designer, Altium Schematic, IBM Watson, GCC, OrCAD, MQTT, VMware
  • Platforms

    Raspberry Pi, Raspberry Pi 3 GPIO, Arduino, Bluetooth LE, Linux, Embedded Linux, OpenWRT, STM32, Amazon Web Services (AWS), Eclipse, Ubuntu
  • Storage

    SQLite, MongoDB, SQL Server 2008
  • Other

    Bluetooth, Bluetooth Beacons, LoRa, LoRaWAN, Bootloaders, Embedded Hardware, Embedded Software, Yocto, FreeRTOS, Linux Kernel, Linux Kernel Modules, Linux Kernel Programming, Linux Kernel Drivers, Internet of Things (IoT), STM32cubeMX, RTOS, OPC Data Access, Modbus Protocol, IoT Protocols, OPC UA, Robotics, AWS, Embedded Systems, Hardware, M2M, GPS, GPRS, 2G, ARM, Wireless, Xenomai, Writing & Editing, Industry 4.0, Microcontrollers, Robot Operating System (ROS), Linux Device Driver, Team Leadership, Product Management, Product Development
  • Paradigms

    Agile Software Development, Management

Education

  • Bachelor of Engineering degree in Electric Engineering
    1998 - 2003
    State University of Campinas (UNICAMP) - Campinas, SP, Brazil
  • Specialization diploma in Electronics
    2001 - 2002
    Ecole Centrale de Lyon - Lyon, France

To view more profiles

Join Toptal
Share it with others