Talha Saruhan, Developer in İzmir, Turkey
Talha is available for hire
Hire Talha

Talha Saruhan

Verified Expert  in Engineering

Software Developer

Location
İzmir, Turkey
Toptal Member Since
December 7, 2022

Talha is a software engineer specializing in game engine development. He has four years of experience working at AAA studios like Activision Blizzard, Avalanche, and Electronic Arts. During which, he worked as both a gameplay and an engine programmer. Before game development, Talha also worked as a distributed back-end engineer specializing in MLOps.

Portfolio

Electronic Arts
C++, C++17, C#, Windows Presentation Foundation (WPF), Python, ECS, Perforce...
Avalanche Studios
C++, Networking, Steam Integration, Xbox Live API, Efficient Data Serialization...
Archmir
Node.js, MongoDB, Express.js, Vue, JavaScript, TypeScript, Docker, MySQL...

Experience

Availability

Part-time

Preferred Environment

Windows, MacOS, C++, C#, Unity, Unreal Engine, SIMD, Optimization, Low-level Programming, Python, Unreal Engine 4, Blueprints Visual Scripting

The most amazing...

...work I've done was at Electronic Arts, contributing to the biggest venture in the Frostbite game engine and shipping giant AAA titles like FIFA and Battlefield.

Work Experience

Software Engineer III

2020 - 2022
Electronic Arts
  • Developed a new WYSIWYG editor for the in-house game engine that has shipped giant titles such as FIFA and Battlefield.
  • Oversaw the Agile processes and Scrum ceremonies for an engineering team of 10 people and provided support to the UX and QA teams.
  • Handled tight and Agile communication between remote teams developing the same product across continents.
  • Optimized the engine editor performance to better user experiences for gameplay programmers and content creators.
  • Tracked and fixed bugs using Jira as a bug-tracking tool.
  • Joined the support role rotation to support external teams using our products in developing other parts of the engine or their games.
  • Delivered presentations about programming and our codebase, such as modern C++20 features to adopt in our code or engineering principles.
  • Enhanced team efficiency by iteratively improving our engineering processes, including pushing for faster and higher quality code reviews and increasing test coverage.
  • Boosted team efficiency by iteratively improving our Scrum processes, including retrospectives and planning, and continuously gathering feedback and implementing changes to find what works for our team.
Technologies: C++, C++17, C#, Windows Presentation Foundation (WPF), Python, ECS, Perforce, Jira, Remote Work, Pair Programming, Scrum Master, Agile, .NET, Visual Studio .NET

Systems Software Engineer

2020 - 2021
Avalanche Studios
  • Took over working on the save system that involved serialization and specific platform APIs on multiple platforms after the only developer working on it left the company.
  • Integrated the latest changes from the game engine's main branch into the branch used by the game team I was working with.
  • Tracked and fixed bugs using Jira as a reporting tool.
  • Fixed engine integration bugs and edge cases for our team.
  • Implemented fixes and wrote new multiplayer matchmaking code for many platforms, including Steam, Xbox, PS5, and Stadia.
  • Worked on the internal standard library to improve the performance of some library functions, such as float parsing and printing.
Technologies: C++, Networking, Steam Integration, Xbox Live API, Efficient Data Serialization, PS4

Co-founder, CTO

2019 - 2020
Archmir
  • Founded an InsurTech startup company with three co-founders. Our product creates detailed damage reports by processing pictures, videos, and other user input from car claims using deep learning techniques we developed.
  • Acted as the tech lead for the project, managing two engineers and three data analysts in the team. Oversaw and implemented the overall product. However, my job definition was quite broad, including business development.
  • Created and trained DL models, deployed them on the cloud, designed and implemented API endpoints using RESTful methods, and developed several native and web applications.
Technologies: Node.js, MongoDB, Express.js, Vue, JavaScript, TypeScript, Docker, MySQL, Amazon Web Services (AWS), Amazon EC2

Software Engineering Intern

2019 - 2019
Activision Blizzard
  • Rewrote the triangle mesh parameterization module used in the lightmap generation process in the Call of Duty: Modern Warfare game from scratch based on reference research papers.
  • Contributed work involving optimal chart picking, aligning, and conformal mapping with cone singularities that minimize both area distortion and the number of visible cuts.
  • Optimized parts of the code, including the rewritten parameterization module, resulting in orders of magnitude faster than the previous implementation.
Technologies: C++, Computer Graphics, Algorithms, Low-level Programming, Optimization, Linear Algebra, Matrix Algebra, Mesh Development

Software Engineer

2018 - 2019
Falcon AI
  • Developed the state-of-the-art model for predicting outcomes of highly competitive Dota 2 matches, modeling the characters in a latent space to represent and analyze their relations.
  • Built a model that helps players take definitive actions to maximize their chances of winning.
  • Deployed the model using web serving frameworks, then migrated it to MLflow and Kubernetes.
Technologies: Python, TensorFlow, TensorBoard, PyTorch, Scikit-learn, MATLAB, Deep Neural Networks, Machine Learning, DevOps, Machine Learning Operations (MLOps), MLflow, Kubernetes

Native Cross-platform, Cloud-connected Image Labeling Application

A production-ready native cross-platform application for labeling images for semantic or instance segmentation and image classification.

I developed the application to address the shortcomings of available tools. It is tightly integrated with my cloud-based data labeling platform
and provides an always-online workflow, thus streamlining the workflow and allowing data collection and verification to be done automatically by the cloud service.

I was inspired by tools provided by Adobe Illustrator and other graphics programs when creating a variety of pen tools and brushes for the user. The application is designed to give the user the best experience, and it was written to be robust to network problems, user errors, or hindsight.

Cloud-based Data Labeling Platform

A cloud-based data labeling platform to streamline labeling workflows and monitoring progress.

I initially created this platform as a back end for my image labeling application. However, it became a completely client-agnostic, data-driven, and modular platform. It allows project managers to keep track of the labeling process and eliminates many types of errors by acting as the authoritative source for the dataset and annotations.

High-performance Matrix-matrix Multiplication

https://www.github.com/talhasaruhan/cpp-matmul/
Wrote a blazingly fast matrix-matrix multiplication (DGEMM) routine utilizing handwritten SIMD instructions, including AVX and FMA ISAs, cache and register blocking, and cache-aware multithreading. The performance is on par with most available BLAS packages, including Intel's MKL.

Physically-based Offline CPU Path Tracer

https://www.github.com/talhasaruhan/physically-based-renderer/
Wrote a physically-based, multiple-importance sampled CPU path tracer in modern C++17 that uses multithreading. The renderer utilizes a custom scene description model and has its own lightweight OBJ importer.

Hardware Local, Cache Aware Thread Pool for HyperThreaded Systems

https://www.github.com/talhasaruhan/hwlocalthreadpool/
Wrote a custom thread pool designed to keep specific jobs issued to multiple threads together on the same physical core. This tool gives the programmer more control over which threads share the same L1 and L2 cache and enables them to avoid unnecessary cache misses and transfers.

Video Human Action Classification

https://www.github.com/talhasaruhan/video-action-classification/
Implemented a cutting-edge video action classification network for a local visual impairment aid project. This is based on the paper: Hybrid Deep Learning Framework for Video Classification, arXiv:1504.01561.

Languages

C++, C#, Python, C++17, TypeScript, JavaScript, C, Assembly, x64 Assembly

Frameworks

Unity, Unreal Engine, .NET, Windows Presentation Foundation (WPF), Unreal Engine 4, Express.js, Django

Libraries/APIs

REST APIs, TensorFlow, PyTorch, GDK, SDL, Steam Integration, Xbox Live API, Scikit-learn, Node.js, Vue, NumPy

Tools

Perforce, Jira, Visual Studio .NET, TensorBoard, MATLAB

Paradigms

Pair Programming, Agile, REST, DevOps, Concurrent Programming

Other

SIMD, Optimization, Low-level Programming, 3D Math, Computer Graphics, Algorithms, Data Structures, Efficient Data Serialization, ECS, Remote Work, Blueprints Visual Scripting, Matrix Algebra, Digital Signal Processing, Linear Algebra, Deep Neural Networks, Machine Learning, Scrum Master, Networking, PS4, Mesh Development, Machine Learning Operations (MLOps), MLflow, x64 Intrinsics, 3D Rendering, Rendering, Multithreading, Concurrency

Platforms

Xbox, Windows, MacOS, Kubernetes, Docker, Amazon Web Services (AWS), Amazon EC2

Storage

MongoDB, MySQL

2015 - 2019

Bachelor's Degree in Electrical and Electronics Engineering

Bogazici University - Istanbul, Turkey

MARCH 2021 - MARCH 2023

Certified Scrum Master

Scrum Alliance

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