
Ovidiu Patru
Verified Expert in Engineering
Software Developer
Pitești, Argeș County, Romania
Toptal member since January 28, 2021
Ovidiu is a creative developer with great attention to detail, passionate about solving the software industry's most challenging problems. With a strong background in algorithm development and several years of professional work experience in a multitude of programming languages, Ovidiu is always able to improve the projects he is working on, either by developing useful tools, suggesting new approaches, or simply by writing clean and efficient code.
Portfolio
Experience
- Git - 4 years
- Algorithm Design - 4 years
- Windows - 3 years
- Qt - 2 years
- C++ - 2 years
- C - 1 year
- Python 3 - 1 year
- SQL - 1 year
Availability
Preferred Environment
Git, Qt, PyCharm, Windows
The most amazing...
...thing I've built was an efficient heuristic algorithm for detecting and categorizing a user's movements on top of a platform, in real-time.
Work Experience
Software Developer
BTL Romania
- Developed a framework in Python for a complete simulation of the Blueline communication protocol.
- Researched and implemented an efficient heuristics-based algorithm for detecting new kinds of data and thus improving the product's capabilities.
- Oversaw and was responsible for service side of the application, from the UI design to the back end.
- Wrote and maintained rigorous full-coverage unit tests for the (C++) project's critical parts.
Software Developer
Luxoft
- Designed and implemented a tool (using Qt) in order to help colleagues handle data files of a custom format (mainly through filtering and marking).
- Participated in all stages of the projects' lifecycle, ranging from the initial setup, creating software design documents, implementation, creating and maintaining unit tests, and general maintenance and bug-fixing.
- Took part in many rigorous pieces of training needed to work in the automotive industry: MISRA compliances, SOLID principles, various other tools, and equipment workshops.
Junior Software Engineer
FAN Courier
- Used Microsoft SQL Server on a daily basis. Searched for and improved inefficient automatic routines, which decreased needed runtime by a few hours/week, thus removing quite a few bottlenecks and limitations.
- Added new requested features for the call-center application, with implementation in both the user interface and back end.
- Added significant contributions to the company's applications by implementing code in newly-learned languages, even within the first days of using them (Visual Basic and C#).
R&D Intern
Finastra
- Worked mostly in Java (with some C++ and JavaScript), in an Agile environment.
- Took part in training and code reviews and quickly learned the product's codebase.
- Worked as an intern—fixing bugs and refactoring code.
Junior Software Engineer
FotoNation
- Designed a complete and efficient algorithm for structuring portrait orientation/scaling within the first day of work.
- Implemented algorithms with a strong focus on performance and attention to edge-cases.
- Responsible for maintaining and adding new features to a large, legacy application.
R&D Intern
Easyhost S.R.L
- Wrote a SQL parser for transforming the query into PHP objects.
- Fixed bugs and maintained various modules of the project.
- Refactored the application's code to be cleaner and easier to understand and maintain.
Java Intern
TeamNet
- Wrote a basic object-relational mapping library in Java.
- Participated in the design and implementation of a basic website in Java using core technologies (Node.js, Angular, databases).
- Worked on a small JavaScript-based project, mainly used for processing custom forms.
Experience
Blueline Communication
In order to improve the work efficiency of the project's development and testing teams, I implemented a simulation of this networking protocol in Python 3. With this framework/tool, many parts of the firmware development (and testing) could continue with much more control over edge cases and error conditions and a greatly reduced need to arrange and rewire custom boards.
The simulation was developed to be a precise replica of the BL communication protocol with additional access to certain default configurations (such as timeout periods, retries). It was able to run flawlessly on our Windows environments.
Log Filterer Application
This tool was written in C++ using the Qt framework.
The application's main purpose was to filter, color-code, and search through the data of hundreds of thousands of lines of logs, all input from a single file of a few specific custom formats.
The user interface was simple and intuitive, and the users were able to seamlessly use the application while additional data was processed in the background.
OpenGL Projects
The projects are implemented both in 2D and 3D and include classic side-scrollers, racing games, and shooters.
I like to reinvent the wheel more or less so that I have full control and command over what is happening behind the scenes in the applications I'm building. To this end, I manually implemented the models, interfaces, cameras, controls, text, physics, and everything a game needs to be functional, all the way up to slightly more complex subjects, such as shaders, reflections, and particles.
Education
Incomplete Bachelor's Degree in Computer Science
University Politehnica of Bucharest - Bucharest, Romania
High School Diploma in Mathematics and Computer Science
Ion C. Bratianu National College - Pitesti, Romania
Skills
Libraries/APIs
OpenGL
Tools
PyCharm, Algorithm Design, Git, Visual Studio
Languages
C++, C, Java, Python 3, Visual Basic, C#, JavaScript, PHP, SQL
Paradigms
Parallel Programming, Agile Software Development, Object-oriented Programming (OOP), Testing, UI Design
Platforms
Windows, Linux
Frameworks
Qt
Storage
Microsoft SQL Server
Other
Data Structures, Artificial Intelligence (AI), GPS, Signal Processing, Embedded Systems, Real-time Operating System (RTOS), Packet Communication, Simulations, Full-stack
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