Onur Tekik, Developer in Ankara, Turkey
Onur is available for hire
Hire Onur

Onur Tekik

Verified Expert  in Engineering

Bio

Onur is a software engineer with a bachelor's and a master's degree from one of the top Turkish universities. He is fluent in C++ and well-versed in SQL, other popular back-end technologies, and Linux at the system programming level. Onur has previously worked on embedded system projects, OS-agnostic desktop applications, and high-throughput back-end systems. He is looking for challenging projects as he is eager to learn and improve his skills.

Portfolio

ANDRITZ AG.
C++, Qt, Multithreading, Visual Studio, Microsoft Visual C++, Qt 5...
Imagine That Inc.
C++, Qt, Multithreading, Visual Studio, Microsoft Visual C++, Qt 5...
ASELSAN
C++, BSP, Linux, Embedded Linux, Embedded C++, PCI, Qt 5...

Experience

Availability

Full-time

Preferred Environment

Linux, SQL, Object-oriented Programming (OOP), Object-oriented Design (OOD), C++, Agile Software Development, C, Git, Python, Qt

The most amazing...

...thing I've built is a fully automated pipeline that procedurally generates maze levels and verifies them using three different programming languages.

Work Experience

Software Developer

2024 - 2024
ANDRITZ AG.
  • Continued my work at ANDRITZ AG after ANDRITZ purchased Imagine That Inc.
  • Implemented a logging mechanism for the company's codebase, fully designed in an object-oriented manner.
  • Worked over several release processes, including more than 80 issues.
Technologies: C++, Qt, Multithreading, Visual Studio, Microsoft Visual C++, Qt 5, Agile Software Development, Agile, C++11, C++17, Gang of Four (GOF) Design Patterns, Processing & Threading, Background Threading, UML, WinAPI, Concurrency, Defensive Programming, Kanban, Design Patterns, Software Design Patterns, Subversion (SVN), Windows

Freelance Software Developer

2022 - 2024
Imagine That Inc.
  • Worked on developing the company's flagship product, ExtendSim, which has been on the market for over 37 years and has a solid user base. The application is a desktop app developed with C++ and Qt, with some code dating back to the 80s.
  • Solved more than 125 issues on the development, excluding code reviews and guidance given to other problems while working there.
  • Re-designed a resource-consuming window for the app to open with fewer resources, using on-demand-rendering instead of rendering all the contents upfront.
Technologies: C++, Qt, Multithreading, Visual Studio, Microsoft Visual C++, Qt 5, Agile Software Development, Agile, C++11, C++17, Gang of Four (GOF) Design Patterns, Processing & Threading, Background Threading, UML, WinAPI, Concurrency, Defensive Programming, Kanban, Design Patterns, Software Design Patterns, Subversion (SVN), Windows

Senior Software Engineer

2019 - 2022
ASELSAN
  • Developed drivers and board support packages (BSPs) for embedded boards that run on Linux.
  • Designed and developed software for BareMetal devices in collaboration with a team of four members.
  • Developed Linux kernel modules and configured the kernel.
  • Created embedded graphical user interface (GUI) applications using Qt, Crank Storyboard Suite, and OpenCV.
  • Implemented testability to a legacy embedded software project with dual-targeting in an OOP manner.
  • Transformed a team of five, including myself, to adhere to Agile principles.
Technologies: C++, BSP, Linux, Embedded Linux, Embedded C++, PCI, Qt 5, Object-oriented Design (OOD), Object-oriented Programming (OOP), OpenCV, ARM Linux, ARM Embedded, Visual Studio Code (VS Code), g++, MinGW, Python, Agile, Google Test, GNU Debugger (GDB), Embedded Systems, Embedded C, Qt, CMake, Defensive Programming, Kanban, Jira, C++11, C++17, Design Patterns, Software Design Patterns, Gang of Four (GOF) Design Patterns, Lua, Agile Software Development, Microcontrollers

Software Engineer

2016 - 2019
Ortana
  • Maintained and upgraded Microsoft Windows services running on high throughput.
  • Designed, developed, and tested an application layer communication protocol.
  • Worked on device management protocols, such as Simple Network Management Protocol (SNMP) and OPC.
  • Handled relational databases (MySQL), added new functionality, and worked on any issues.
  • Maintained a WAMP (Windows-Apache-MySQL-PHP) web service, a GIS system that helps clients manage and monitor many field devices.
Technologies: C++, Linux, Windows Services, Embarcadero RAD Studio, SNMP, MySQL, OPC Server, Agile Software Development, C, g++, SQL, Object-oriented Programming (OOP), Relational Database Design, Agile, Embedded Linux, Transmission Control Protocol (TCP), TCP/IP, Sockets, UDP, Multithreading, Processing & Threading, Background Threading, UML, WinAPI, Embedded C, Embedded C++, Concurrency, Ubuntu, Ubuntu Linux, PHP, Databases

A Customizable Pipeline

https://github.com/iamonur/the_legendary_pipeline
I developed this customizable pipeline for my master thesis. It generates maze-like levels using cellular automation, creates protocol meta language (PROMELA) code for the game level WRT custom rules, and verifies the game level. The procedure is automated and customizable.

GoF Design Patterns' Implementations in C++

https://github.com/iamonur/cpp-design-patterns
This CMake project includes implementations of Gang of Four (GoF) design patterns. All the patterns included in the project are unit-tested with the help of a tiny unit testing library of acutest.

Simple Flutter Calculator App

https://github.com/iamonur/calc
A Material-based Flutter calculator app fully developed by me. The purpose was to get familiar with Dart and how to develop and deploy Flutter applications, especially in the Android setups. For calculations, I have used expression trees.
2017 - 2021

Master's Degree in Information Systems

Middle East Technical University - Ankara, Turkey

2011 - 2016

Bachelor's Degree in Electrical and Electronics Engineering

Middle East Technical University - Ankara, Turkey

Libraries/APIs

OpenCV, Sockets, WinAPI, Node.js, Stripe API, Stripe

Tools

Subversion (SVN), Makefile, MinGW, Git, GNU Debugger (GDB), CMake, Jira, Visual Studio, Microsoft Visual C++

Languages

C++, Embedded C++, Promela, Python 3, Python, SQL, Java, C, Embedded C, C++11, C++17, UML, PHP, Dart, Rust, JavaScript, Lua

Paradigms

Object-oriented Programming (OOP), Agile Software Development, Object-oriented Design (OOD), Agile, Software Testing, Gang of Four (GOF) Design Patterns, Unit Testing, Defensive Programming, Kanban, Design Patterns

Platforms

Linux, ARM Linux, Visual Studio Code (VS Code), Embedded Linux, Ubuntu, Ubuntu Linux, Android, Debian, Firebase, Software Design Patterns, Windows

Frameworks

JUnit, Qt 5, Google Test, Qt, Flutter

Storage

MySQL, RDBMS, Databases, Cloud Firestore

Other

Data Structures, Embedded Software, Relational Database Design, ARM Embedded, g++, Networking, Algorithms, Windows Services, Embarcadero RAD Studio, SNMP, OPC Server, BSP, PCI, Games, 2D Games, Procedural Generation, Embedded Systems, TCP/IP, Transmission Control Protocol (TCP), UDP, Multithreading, Processing & Threading, Background Threading, Concurrency, Microcontrollers

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring