Omer Cerrahoglu
Verified Expert in Engineering
Software Developer
Istanbul, Turkey
Toptal member since August 22, 2022
Omer excels in building complex systems, working on the most critical components of a project, from cryptography to networks, and performance to scalability. He integrated a new cryptographic protocol to support messaging groups of thousands of users, with strong cryptographic guarantees and seamless performance. Omer built a fast serialization, de-serialization algorithm for cryptographic objects. He is a natural-born problem solver with a degree from MIT and a strong background in mathematics.
Portfolio
Experience
- C++ - 4 years
- PostgreSQL - 3 years
- Redis - 3 years
- Cryptography - 3 years
- Java - 3 years
- Distributed Systems - 3 years
- Android - 3 years
- Performance - 2 years
Availability
Preferred Environment
Visual Studio Code (VS Code), Java, C++, C, Node.js, IntelliJ IDEA
The most amazing...
...project I've worked on is integrating a new cryptographic protocol, supporting groups of thousands of users in an instant messaging app.
Work Experience
Software Engineer
Ordulu Information Technologies
- Integrated a new cryptographic protocol to support messaging groups of thousands of users, with strong cryptographic guarantees and seamless performance.
- Developed both the server-side, in Java using IntelliJ, and the Android mobile app, in Java and C++, glued together with JNI, using Android Studio.
- Designed and developed a fast (logarithmic) serialization and de-serialization algorithm for cryptographic objects.
- Created and implemented a group management protocol, ensuring consistent group partnership and metadata across thousands of devices.
- Developed new client-side caching mechanism to improve message sending speed threefold.
- Implemented a performant message ordering system, ensuring consistency amongst thousands of devices.
- Improved the server-side caching system, reducing memory footprint by magnitudes of order, while maintaining the performance.
- Extended the cryptographic protocol to securely support external group requests.
- Implemented, designed, and developed the back-end and server and client-side network stack from scratch, using WebSockets for a live video annotation product.
- Created a new algorithm for live stream synchronization and live stream annotation between server and client.
Software Engineer Intern
YugaByte
- Designed the semantics and implementation of distributed database indices, which, given the semantics, could be co-located with the database shards.
- Implemented the read functionality, including algorithms to decide, given the existing indices for the database, which one should be chosen to provide the best read performance.
- Extended the write functionality to atomically write to both the database and index shards while maintaining compatibility with the Raft protocol.
- Improved how SELECT queries are processed, making the behavior consistent with Cassandra.
Experience
TreeKEM
Worked on both the server and Android-based client. The server was written in Java and used Dropwizard over HTTPS and WebSockets to support a RESTful API, PostgreSQL for storage, and Redis for caching. The client-side was written in Java, and I added C++ code which I glued to the main codebase with JNI. I also worked on the front-end, improving UI performance for large groups.
Observed the correctness and performance. The work in correctness has been to ensure that the group remains consistent across the potentially thousands of devices with high performance. I implemented a performant message ordering system, ensuring clients receive messages both fast and in-order, and a group management system atop the cryptographic protocol, ensuring consistent group membership. For performance, my work has been developing new storage and caching algorithms, such as a logarithmic time algorithm to serialize and de-serialize cryptographic objects.
Sahin
Ulak Admin Panel
ChatClient
https://github.com/OmerCerrahoglu/ChatClientEducation
Bachelor's Degree in Computer Science
MIT - Cambridge, Massachusetts, USA
Skills
Libraries/APIs
REST APIs, Protobuf, FFmpeg, OpenCV, Node.js
Tools
Git, IntelliJ IDEA, Apache Maven, GNU Debugger (GDB), Valgrind, Gprof, RabbitMQ
Languages
Java, C++, C, Go, Python
Frameworks
JNI, Hibernate, Dropwizard, Spring, GStreamer, Qt
Storage
PostgreSQL, Redis, SQLite, Databases, Cassandra, MongoDB
Platforms
Visual Studio Code (VS Code), Android, Docker, Kernel Programming
Paradigms
Back-end Architecture, REST
Other
Cryptography, Algorithms, Mathematics, Combinatorics, Geometry, Algebra, Abstract Algebra, Linear Algebra, Discrete Mathematics, APIs, Messaging, Distributed Systems, Operating Systems, Applied Cryptography, Performance, Caching, Linux Kernel, Consensus Algorithms, SSL, Sharding, Raft Consensus Algorithm, Async/Await, Security, Video Streaming, Video Processing, WebSockets, Clang, Back-end, Back-end Development, Back-end Performance, API Integration, Data Structures
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