Edgard Lima
Verified Expert in Engineering
Multithreading Developer
Recife - State of Pernambuco, Brazil
Toptal member since May 16, 2017
Edgard has worked as a consultant for the Nokia Research Center (NRC) Helsinki, Finland, in addition to his two decades of software development experience. He is firmly committed to quality, can bring a state of art theory into practice, and has led small teams.
Portfolio
Experience
- C - 20 years
- Linux - 20 years
- Socket Programming - 17 years
- C++ - 17 years
- Embedded Linux - 12 years
- Concurrent Programming - 12 years
- Multithreading - 12 years
- Boost - 10 years
Availability
Preferred Environment
Vi, Git, Qt Creator, Linux, Embedded Linux
The most amazing...
...thing I've done is to lead, design, and develop a GUI, DLL, image processing, firmware and drivers for a bank scanner in a short time, working 16 hours/day.
Work Experience
Consultant
CESAR
- Developed a MacOS App in Objective-C and Swift that monitors accessories traffic with a big stack of protocol validations.
- Developed Bluetooth full-stack parsing and state machines (HCI, L2CAP, RFCOM, SDP, GATT, and ATT).
- Developed IEEE802.11 management frames parsing and validation.
Professor
Nova Roma College
- Taught undergraduate students about operating systems.
- Lectured on the theory of computation to undergraduate students.
- Taught computer networks to undergraduate students.
Senior Consultant
Accenture
- Developed PoC and prototypes and presented them to clients.
- Developed apps running in Drones to detect objects using YOLO and show that in an application using Qt/GStreamer and manipulate the live video with detected objects.
- Developed a heat map app showing people in a room based on their probed IEEE802.11 packets.
- Researched and analyzed the Bitcoin blockchain to collect some statistics.
Consultant | Architect | Team Lead | Software Engineer
FiTEC
- Designed and developed a bus electronic ticketing system in Modern C++, Boost, DBUS, JSON, NMEA, and Qt.
- Built a J1939/21-81 library in C, from scratch, on top of CMSIS, for Cortex microprocessors. The library was designed to be portable and was ported to embedded Linux.
- Led, designed, and developed a DLL with image processing, GUI, and a firmware solution in C, C++, and GTK for a bank check scanner.
- Incorporated Linux for completely new hardware based on ATMEL AT91SAM9G45 and developed an application for that using U-Boot, Buildroot, C. GTK, a Linux kernel, and driver development.
- Worked as the team and technical lead—adopting Scrum and TDD in several other projects.
Software Developer
Nokia Institute of Technology
- Contributed to the GStreamer project by fixing bugs and porting plugins from 0.8 to 0.10.
- Authored the V4L2src plugin. A plugin to use WebCams and TV cards on GStreamer.
- Consulted at the Nokia Research Center in Helsinki, Finland, to leverage GStreamer as a multimedia framework for the N900 smartphone.
Team Leader | Software Architect | Engineer
CIn | UFPE
- Acted as the team/technical lead and coached the junior members, as well as screened and hired them.
- Designed the architecture for a Waytec touchscreen monitor and calibration application for Linux and several versions of Windows, where most of the code (80%) was C++ multi-platform code.
- Developed a WDM device driver and helped team members develop the Linux drivers, DLLs, and GUI.
Team Leader | Software Architect | Engineer
CESAR
- Fixed bugs and developed Motorola TDMA phones (proprietary P2K OS).
- Worked as the team lead, SCM, an architect of a seven-person team developing games in BREW for LGE CDMA phones.
- Developed critical parts of the board games like tic-tac-toe 3d and Go.
- Built a secure wallet application with encryption and security features.
Developer
Mobile
- Worked in close cooperation with the CEO to analyze the WAP market.
- Built Satellite Forms prototypes for Palm OS devices.
- Developed eVB and eVC++ prototypes for the Pocket PC.
- Designed and implemented a financial PocketPC application using eVC++.
- Designed and implemented a simplified eVC++ API database (like ADOCE) accessing OLEDB directly, getting optimized performance, and delivering a COM interface to be used by eVB applications.
- Designed and implemented an API to exchange data between a desktop and a pocket PC using a gzipped XML file through TCP/IP.
- Designed and developed an in-depth C Palm database. It had several layers, including memory management, data structures, DBMS, and its own API.
Intern
Wiser
- Developed a CGI (using C) to render the bills of a credit card company.
- Designed and implemented automatic backup routines on Free BSD using Bourne shell.
- Trained the company's employees to use the new system.
Experience
GStreamer V4L2src Plugin
https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good-plugins/html/gst-plugins-good-plugins-v4l2src.htmlRadio Bus
http://www.mobicity.com.br/J1939-21/81 Library
No link is provided due to NDA.
Nokia Internet Tablet Converter
Multifunctional Terminal TMS2
https://sweda.com.br/Billing as a PDF in a Browser
Education
Master's Degree in Computer Science
Federal Rural University of Pernambuco | UFRPE - Recife, Brazil
Bachelor's Degree in Computer Science
Federal University of Pernambuco | UFPE - Recife, Brazil
Skills
Libraries/APIs
Protobuf, OpenCV, Carbon, DirectShow, Win32 API, Sockets
Tools
GNU Debugger (GDB), ActiveMQ, Qt Creator, Git, Subversion (SVN), CodeWarrior, DBus, You Only Look Once (YOLO), U-Boot, GTK+, Celery, DJI SDK
Languages
Embedded C++, C++, C, Python, XML, Dart, VB, HTML, C++11, Objective-C, Bash, Java, HTML5, CSS, JavaScript, SQL
Frameworks
GStreamer, Boost, Django, Selenium, Flutter, Qt
Paradigms
Concurrent Programming, Socket Programming, CMMI, Scrum, REST
Platforms
Embedded Linux, Linux, BREW, Raspberry Pi, Android, Windows, Raspberry Pi 3 GPIO, Windows CE, Docker, Blockchain, Arduino, MacOS, Mobile
Storage
JSON, Redis, SQLite, PostgreSQL, MySQL
Other
Multithreading, J1939, UDP, Transmission Control Protocol (TCP), Algorithms, Embedded Development, RS-232, Serial Communication, Web Scraping, Universal Asynchronous Receiver/Transmitter (UART), Data Scraping, NMEA, WebSockets, CAN Bus, Vi, COM, Forms, OLE DB, CGI, Cortex Microcontroller Software Interface Standard (CMSIS), Drones, Computer Science, NodeMCU, Unix Shell Scripting, Image Processing, Qt 4, Media, HTTP, Distributed Systems, Internet of Things (IoT)
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