
Guilherme Stiebler
Verified Expert in Engineering
Software Developer
Guilherme is a software developer with a solid background in scientific computing. He has also experience in entrepreneurship and team management. He is passionate about creative problem solving and the design of algorithms. In the last years, Guilherme focused on the design and coding of simple, beautiful, and highly maintainable code.
Portfolio
Experience
Availability
Preferred Environment
MacOS, Visual Studio Code (VS Code)
The most amazing...
...algorithms I've created were the plate location and character segmentation algorithms for an automatic license plate recognition system.
Work Experience
Software Developer
GroupIn
- Created a mobile messaging app from scratch.
- Architected the application and database servers to easily scale to handle peaks of usage.
- Implemented mobile notifications with Firebase for iOS and Android.
Software Developer
Performitiv, LLC
- Implemented global search using Elasticsearch.
- Promoted the adoption of Scrum practices.
- Promoted software development best practices, and adoption of ES6 features.
- Optimized MongoDB queries.
- Rewrote parts of the system from AngularJS to Vue/Vuex.
- Wrote unit and integration automated tests.
Lead Developer
Pura Cozinha
- Created a marketplace to connect customers with people cooking from home, from scratch to the MVP stage.
- Implemented responsive Material-UI interfaces to be used in multiple devices.
- Created and implemented an algorithm to match customers to the producing kitchens, in JavaScript.
- Implemented automated tests covering everything from the state management in the front end down to the database.
- Managed another engineer remotely.
Software Developer
Delmic (via Toptal)
- Implemented the reading of tiled images and sub-images from TIFF files on PyLibtiff.
- Implemented on-demand loading of large TIFF files on Odemis, a software for visualizing microscope images.
- Implemented a plugin for Odemis to align microscope images from different sources, using OpenCV matching algorithms.
- Implemented automated tests for all developed features.
Co-founder and Software Developer
E&P Brazil
- Built business intelligence software from design phase to launch.
- Developed architecture to allow adding new types of information with minimum programming.
- Created a tool that allows users to dynamically create charts to visualize data with Google Charts.
- Developed visualization of geolocated objects using Google Maps.
- Built TypeScript interfaces for all network communication between the client and server. It allows the TypeScript compiler to check consistency in the data structures that are passed between the client and the server.
- Wrote unit, functional, and Selenium tests.
Software Developer
Tecgraf
- Led the architecture design of a finite element method physics simulator.
- Worked on a 3D seismic visualizer using OpenGL.
- Led the group that implemented automatic testing, tool selection, and process determination.
- Developed on-demand loading of large seismic files. The startup of the software after loading a large file changed from several minutes to seconds.
- Led the adoption of an object-oriented approach for the development of common GUI elements in the system.
- Developed an algorithm for riser interference detection with complexity of O(n log n + m log m). The previous algorithm had O(n2 + m2) complexity.
- Analyzed a poorly documented and engineered 25-year-old FORTRAN code, and converted it to a well structured, object-oriented C++ code.
Founder and Software Developer
Quasar Group
- Created and developed the Cableway software. It reads CAD files, processes them, and shows several reports.
- Implemented an OpenGL 2D viewer for CAD files.
- Designed the cable route code based on the Djikstra algorithm for the Cableway software.
- Developed the integration with a CAD reading library.
- Managed the development of an ERP based on Ruby on Rails and Adobe Flex.
Co-founder and R&D Manager
Kognitus
- Improved the computer vision algorithms of the Kapta software for automatic license plate recognition.
- Managed a team of developers for the implementation of computer vision algorithms and a desktop application that used the algorithms.
- Worked on multithreaded code that managed the different phases of the computer vision processes.
- Worked on the object-oriented redesign of the Kapta software.
- Worked on fundraising activities to support the growth of the company.
Software Developer
LABIC UFRJ - Computational Intelligence Lab
- Developed the plate location algorithm for Kapta, a software for automatic license plate recognition using computer vision. The newly created algorithm had a accuracy of 94%. The previously used algorithm had a accuracy of 76%.
- Developed a variation of the Watershed algorithm for character segmentation.
- Developed a custom memory manager that used the systems pattern of memory allocation to avoid calling OS memory allocation and deallocation.
- Published the paper: "KAPTA - A system for automatic plate recognition based on the technics of neural networks and image processing" in SUCESU 2004. This paper was awarded as the best paper of the event.
- Worked on the features extraction of the characters for the input of the neural networks.
Software Developer
Segredo Constructions, LLC
- Developed an ERP for a small-sized construction company.
Experience
Pura Cozinha
https://github.com/gstiebler/pura_cozinhaInsider Oil
https://github.com/gstiebler/insider_oilCableway
Tio Patinhas
https://github.com/gstiebler/tio_patinhasCodemap
https://github.com/gstiebler/codemapMochila
https://github.com/gstiebler/mochilaImage Compression Algorithm Implementation
Vision Workbench
https://github.com/gstiebler/vision_workbenchSkills
Languages
C, ECMAScript (ES6), TypeScript, JavaScript, C++, SQL, Python, Java, HTML, Ruby, C#, GraphQL, Delphi, Flash ActionScript, Assembly, Pascal
Frameworks
Express.js, React Native, Boost, Ruby on Rails (RoR), Adobe Flex, MUI (formerly Material UI), Redux, AngularJS, Qt
Libraries/APIs
Node.js, React, Standard Template Library (STL), OpenCV, Google Maps, Google Chart API, NumPy, MobX, OpenGL, Vue, Vuex
Paradigms
Object-oriented Programming (OOP), Agile Software Development, Scrum, Functional Programming, Continuous Delivery (CD)
Platforms
Visual Studio Code (VS Code), Linux, Docker, MacOS, Eclipse, AWS Lambda, Amazon Web Services (AWS), Amazon EC2, AWS Elastic Beanstalk, Firebase
Storage
MongoDB, MySQL, InterBase, Elasticsearch, Amazon S3 (AWS S3)
Other
Algorithms, Multithreading, Data Structures, Computer Vision, Machine Learning, Mathematical Modeling, Serverless
Tools
Microsoft Visual Studio, Git, Visual Studio, CMake, Webpack, MATLAB
Education
Bachelor's Degree in Computer Science
UFRJ - Rio de Janeiro