
Batu Turksonmez
Verified Expert in Engineering
Back-end Developer
Ankara, Turkey
Toptal member since December 2, 2022
Batu is a professional C++ developer with 7+ years of experience developing desktop, web, and embedded applications in applied math, computational geometry, computer vision, and multiphysics simulation fields. He's proficient in developing and maintaining embedded C++ on real-time operating systems. Batu has been involved in all software development phases, such as designing, coding, testing, and writing specifications.
Portfolio
Experience
- C++ - 10 years
- Object-oriented Programming (OOP) - 6 years
- Git - 6 years
- Boost - 4 years
- Python 3 - 4 years
- Computational Geometry - 2 years
- RESTful Microservices - 2 years
- Qt - 2 years
Preferred Environment
Visual Studio Code (VS Code), Microsoft Visual C++
The most amazing...
...thing I've developed was a nonlinear finite element analysis engine. It enabled us to analyze any physical body, from dental filling to nuclear power plants.
Work Experience
Senior Software Engineer
MilSOFT Software Technologies, Inc.
- Participated in software design, implementation, unit testing, and system integration activities of tactical data link processors (Link-11, Link-16, and Link-22).
- Participated in the development of a multithreaded Windows emulator using Win32 API for ARINC653 operating system services.
- Participated in the development of communication services between ARINC 653 partitions utilizing TCP/UDP sockets.
- Implemented message format validation and data processing components for Link-11, Link-16, and Link-22 in compliance with NATO STANAG specifications.
- Implemented a data-forwarding computer software component between Link-16 and JREAP-C.
- Implemented a communication layer between computer software components using the DDS protocol.
Computational Geometry C++ Developer
Global Apparel Partners, Inc.
- Performed the object-oriented design of a graphics engine to be used in 3D knitting technology.
- Implemented isolines and harmonic field extractors using the 3D geometry library "geometry-central."
- Optimized a geodesic path extractor to work in real-time with a very low latency.
C++ Software Engineer
Bentley
- Developed a robust and powerful solver for a system of nonlinear equations to analyze bridge structures.
- Built a RESTful microservice that synchronizes engineering data with a digital twin platform in the cloud.
- Tracked and fixed bugs using Azure Boards as a reporting tool.
- Used Azure Pipelines as a CI/CD tool to build and test the environment.
C++ Software Engineer
LARSA
- Developed a pile foundation modeler app which is currently being used mostly across the US among top-tier bridge engineering companies.
- Built an adaptive triangular and quadrilateral mesh generator for 2D objects and 3D surfaces.
- Created a web section properties calculator for geometries used in bridge structures using Oat++.
- Tracked and fixed bugs using Jira as a reporting tool.
- Used AppVeyor as a CI/CD tool to build and test the environment.
Research Engineer
Middle East Technical University
- Developed a nonlinear finite element engine capable of analyzing residential buildings under seismic loads using Boost and Eigen libraries.
- Improved the execution time of the finite element analysis engine using the cuBLAS library, which performs GPU parallelization.
- Created a deep learning framework using TensorFlow that designs residential buildings.
- Worked with linear variable differential transformer (LVDT) sensors to measure displacements in lab experiments and studied their inner digital signal processing mechanism.
- Tracked and fixed bugs utilizing Microsoft Planner.
- Integrated this project as a PhD student and supervised two master's students throughout the project.
C++ Software Engineer
I4Works
- Developed an app that is capable of analyzing and monitoring stadium lighting pole structures.
- Tracked and fixed bugs using GitHub Issues and Microsoft Planner.
- Reduced both CPU time and RAM allocation by ten times, decreasing the bandwidth of sparse matrices used by the analysis engine.
- Created low-latency API using C++ Rest SDK, written in C++, for real-time data transfer from displacement sensors on lighting poles.
- Created a structural health monitoring app that performs digital signal processing and filtering of raw accelerometer data.
- Managed and supervised one team member in the analysis engine project.
Experience
App for Analysis and Design of Pole Structures
Pile Foundation Modeler
For the architecture part, I employed multiple design patterns, such as the Strategy, Bridge, Factory Method, Adapter, and Iterator patterns, to achieve reusable and maintainable objects. For the analysis engine, I primarily relied on my mechanics' knowledge and the strong capabilities of the Eigen and Boost libraries for solving linear and nonlinear systems of equations. Lastly, I used graph data structure to store the vertices and edges of the geometries and advanced computational geometry algorithms such as Delaunay triangulation and Q-mesh algorithms to develop an efficient and robust mesh generator.
Web-based CAD/CAM Application
As a software developer for LOOP™, the industry's first web-based CAD/CAM application for 3D knitted fabrics and products, I played a key role in developing critical technical components that power its unique capabilities.
I designed an object-oriented graphics engine specifically tailored for 3D knitting technology, establishing the foundation for LOOP™'s visual system that seamlessly handles multiple file dimensions (3D, 2D, and granular knit level) with synchronized real-time editing capabilities. One of my major contributions was implementing isolines and harmonic field extractors using the "geometry-central" 3D geometry library. This work enabled advanced pattern generation capabilities essential to the platform's functionality.
I'm particularly proud of my optimization work on the geodesic path extractor, which I refined to perform in real time with minimal latency. This enhancement allowed designers to instantaneously visualize complex knitting paths, significantly improving the user experience regardless of expertise level.
Education
Ph.D. Degree in Engineering
Middle East Technical University - Ankara
Master's Degree in Computational Mechanics
University of California, San Diego - La Jolla, CA, USA
Bachelor's Degree in Civil Engineering
Middle East Technical University - Ankara, Turkey
Exchange Program in Civil Engineering
University of California, Los Angeles - Los Angeles, CA, USA
Skills
Libraries/APIs
Standard Template Library (STL), NumPy, TensorFlow, Win32 API, Eigen, cuBLAS, LAPACK, OpenGL, OpenMP, OpenCV, POSIX
Tools
Git, Qt Creator, Microsoft Visual C++, Jira, Qt Widgets, Medialooks Platform SDK, C#.NET WinForms, DOORS, Apache Maven, Jenkins, Confluence
Languages
C++, C#, C++17, Python 3, Fortran, C, Python, C++98, Java 8
Paradigms
Computational Mechanics, Object-oriented Programming (OOP), High-performance Computing (HPC), Object-oriented Design (OOD), REST
Platforms
Windows, Visual Studio Code (VS Code), NVIDIA CUDA
Frameworks
Boost, Qt
Other
Numerical Programming, Data Structures, Mechanics, Finite Element Method (FEM), Algorithms, COM Interop, Computational Geometry, Oatpp, SDKs, AppVeyor, Azure Boards, Azure Pipelines, RESTful Microservices, Cryptography, WebAssembly (Wasm), DDS, ARINC, MIL-STD-1553, DO-178B/C, TCP/IP, UDP, Multithreading
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