Erhan Okuyan
Verified Expert in Engineering
Embedded Software Developer
Ankara, Turkey
Toptal member since June 28, 2022
Erhan is a software developer with over 15 years of expertise in various facets such as embedded programming, computer graphics, network programming, and video processing. As a developer, he has created software modules regarding different areas for several defense projects, including the famous ANKA drones. Erhan has an academic background with a PhD in computer engineering. His research encompassed high-performance computing, volume visualization, and computational physics.
Portfolio
Experience
Availability
Preferred Environment
Windows, Linux, C, C++, C#, Python
The most amazing...
...role I've had is being one of the major developers of the famous battle-proven ANKA UAV systems.
Work Experience
Associate Avionic Software Development Engineer
Turkish Aerospace Industries
- Provided maintenance support and developed required updates for deployed ANKA UAV (unmanned aerial vehicle) software systems.
- Developed radio interface software for ANKA UAV radio relay system. Communication protocols based on Stanag 4586, 7023, and custom formats were partially reverse-engineered using Wireshark data dumps and designed as a Windows service with C++ and C#.
- Contributed to the development of a video visualization application with extended capabilities for ANKA UAV systems.
- Worked on image processing applications such as tracking and motion detection for EO/IR videos coming from the ANKA UAV.
- Developed and trained a deep-learning model for symbology masking EO/IR payload videos in ANKA UAVs. Since the symbology overlayed onto the incoming video negatively affects many image processing algorithms, masking is a preprocessing step.
- Built a data routing application with extended capabilities for ANKA UAV systems.
Senior Avionic Software Development Engineer
Turkish Aerospace Industries
- Provided maintenance support and developed required updates for deployed ANKA UAV (unmanned aerial vehicle) software systems.
- Created a video visualization application with extended capabilities for ANKA UAV systems.
- Built a data routing and recording application for ANKA UAV systems.
- Made synthetic-aperture radar (SAR), a data visualization module that receives the SAR image data with Stanag-7023 standard to perform image processing and create the detailed image using C++ as a dynamic-link library (DLL).
- Produced small utilities with Win32 API that automatize the data entry routines for companies existing business applications, reducing manual workload.
- Implemented flight-plan collision detection analysis software module for ANKA UAV aircraft control software. The software analyzed the defined flight plans for possible ground collisions using DTED heightmap files.
- Maintained the mission control module and the redundancy and hot-swapping modules of ANKA UAV flight control software.
- Contributed to ANKA UAV ground control station's system management, data management, and test engineering software using C#, C++, and DevExpress libraries.
- Worked on aircraft control software for Simsek (high-speed target drone) and Mosquito (unmanned helicopter). Developed HMI screens and related telemetry and telecommand handling modules using C#, OpenTK, and DevExpress.
- Developed a flight simulation application for ANKA-UAV graphical simulations.
Avionic Software Development Engineer
Turkish Aerospace Industries
- Developed aircraft control software for ANKA UAV products' ground control station (GCS). This software was DO-178B certifiable and was created on Integrity RTOS (real-time operating system) with C language.
- Created Human Machine Interface (HMI) screens of ANKA aircraft control software on Integrity RTOS using C and the VAPS tool.
- Devised and developed RTOS Task Scheduling algorithm of ANKA UAV aircraft control software. (Okuyan et al. (2012). Earliest deadline first scheduling algorithm and its use in Anka UAV. 2012 IEEE/AIAA 31st Digital Avionics Systems Conference (DASC)).
- Worked on real-time networking libraries of ANKA UAV aircraft control software, including custom software implementation of ethernet interface teaming and custom multicast registration routine for Integrity RTOS using C.
- Implemented ANKA UAV aircraft control software's logging and instrumentation modules. Performed system-wide performance optimizations and consulted on module-wise optimizations.
- Maintained the mission control module and the redundancy and hot-swapping modules of ANKA UAV flight control software.
- Contributed to system management, data management, and test engineering software of ANKA UAV ground control station using C#, C++, and DevExpress libraries.
- Worked on aircraft control software for Simsek (high-speed target drone) and Mosquito (unmanned helicopter). Developed HMI screens and related telemetry and telecommand handling modules using C#, OpenTK, and DevExpress.
Experience
Visualization Application for ANKA UAV Family Ground Control Station (GCSVisualizer)
• Allowing multiple video streams from the UAV to be displayed in real-time.
• Supporting H264 encoded videos with/without MpegTS and Stanag-7023 encapsulations.
• Facilitating customizable video data and video output buffering for smooth and low latency video display.
• Overlaying telemetry data of the UAV onto the video with custom symbology (dials, indicators, etc.).
• Sustaining telemetry from multiple sources.
• Facilitating the replay of previously recorded video and telemetry data.
• Enabling video exports.
• Fostering image processing algorithms, such as tracking and motion detection.
• Promoting the inference of external deep learning models, such as naval vehicle classification or forest fire detection.
The application was integrated into payload control, system management, and stand-alone software and actively used as the flight and mission monitoring tool for the ANKA UAV family. I was the sole developer on this project.
Data Routing Application for ANKA UAV Family Ground Control Station (GCS)
• Allowing network data distribution to receive data from many network sources via UDP or TCP, then route the data to numerous destinations via UDP, TCP or even export the contents into a file.
• Replacing a single worker process created for each data source by implementing a multi-process architecture and improving the performance and reliability.
• Facilitating unicast and multicast UDP connections and client and server TCP options.
• Supporting multiple Ethernet interfaces.
• Allowing for optionally stripping Stanag7023 headers before routing the data.
• Permitting numerous running methods, whether via a windows service, a background application, or a Windows application with a GUI.
Ground control stations and the networks within these stations used the tool. I developed the entire application.
EOFSim Flight Simulator
Dynamic View-Dependent Visualization of Unstructured Tetrahedral Meshes
Direct Volume Rendering of Unstructured Tetrahedral Meshes using CUDA and OpenMP
MaterialVis: Material visualization tool using direct volume and surface rendering techniques.
BilKristal: Pattern Information Extraction from Crystal Structures
Education
PhD in Computer Engineering
Bilkent University - Ankara, Turkiye
Master's Degree in Computer Engineering
Bilkent University - Ankara, Turkey
Bachelor's Degree in Computer Engineering
Bilkent University - Ankara, Turkey
Skills
Libraries/APIs
OpenGL, OpenMP, Sockets, OpenCV, FFmpeg, API, MPI, TensorFlow, OpenGL
Tools
Visual Studio Development, Wireshark, MATLAB, Direct3D, CMake, C#
Languages
C, C++, Embedded C, C#, .NET, Python, Java, SQL, GLSL, HLSL
Paradigms
Parallel Programming, Object-oriented Programming, GPGPU
Platforms
Windows Development, CUDA, Unix, Linux
Frameworks
.NET
Storage
Database
Other
Computer Networking, Computer Graphics, TCP/IP, Computational Geometry, VAPS, DO-178B/C, Stanag 4586, Stanag-7023, MPEG-TS, UDP, Transmission Control Protocol (TCP), Digital Terrain Elevation Data (DTED), Algorithms, 3D Visualization, Research, Multi-core Programming, GUI Design, Multithreading, Background Threading, Multiprocessing, Embedded Development, Computer Vision, Computational Physics, Neural Network, DevExpress, Reverse Engineering, H264, Real-time Embedded Systems, Back-end Developers, Embedded Systems Engineering, Back-end Developers, Operating Systems, Graph Theory, Ethernet, Crytographer, NLP, Windows Development, Wireless Networking, Shaders, Deep Learning, INTEGRITY RTOS, RTOS, Human Machine Interface, Generative Pre-trained Transformers (GPT)
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