Okan Ardic
Verified Expert in Engineering
Software Developer
Istanbul, Turkey
Toptal member since June 4, 2022
Okan's professional career started in 2008 as a software engineer. He's since focused on Java development with additional experience in Go, Python, Docker, Kubernetes, and Amazon EKS. Okan prides himself on his strong software development skills as well as team building and management experience. He firmly believes that writing well-documented and formatted code and static code analysis are vital to writing maintainable applications and detecting code defects.
Portfolio
Experience
- SQL - 14 years
- Java - 10 years
- Hibernate - 10 years
- Spring - 7 years
- REST - 7 years
- Docker - 1 year
- Kubernetes - 1 year
- Microservices - 1 year
Availability
Preferred Environment
IntelliJ IDEA, CentOS, Linux, Eclipse, Git
The most amazing...
...thing I've independently developed is an HTTP Proxy application, and it is used by international companies.
Work Experience
Software Team Lead
Ironsphere
- Developed an HTTP proxy application that works as a mitmproxy intercepting, tracking, and filtering all HTTP and WebSocket traffic using Java 8, Spring Boot, and Netty.
- Designed and developed a microservice-based authorization server that provides secure access to back-end resources with JWTs following OAuth2 standards. Used Java 11, Amazon EKS, Istio, Docker, Spring Boot, and RESTful services.
- Implemented a centralized logging solution with a multi-node ELK cluster hosted on Docker Swarm.
- Designed and developed a Dockerized TCP/UDP port forwarding solution managing an embedded OpenVPN client to connect to remote VPN servers. The tech stack included Java 8, Docker, OpenVPN, and Netty.
- Designed and developed a generic test utility that performs load tests on different database platforms such as Oracle and MS SQL. Used Java 8, Spring Boot, and Spring Data JDBC.
- Took part in the development of the SQL proxy application that filters, monitors, and masks all traffic on major database platforms such as Oracle and MS SQL. The tech stack included Java 8, Spring Boot, Spring Data JPA, Hibernate, and Netty.
Software Group Manager
Defne
- Built and managed software development team and discussed all aspects of software design, development, and troubleshooting to identify issues and apply best practices.
- Designed and developed a new Call Center Management Platform that manages all incoming and outgoing call traffic within call centers to replace the legacy platform. The tech stack included Java 8, Kafka, Redis, Hazelcast, Spring Boot, and Netty.
- Designed and developed the Ring Back Tone (RBT) platform for telecom operators that allows preconfigured music to be played to the caller during a call instead of the default ringing tone. Used Java, Hibernate, JPA, Jersey, and JAX-WS.
- Contributed to the evaluation of project requirements and the preparation of RFP responses.
- Collaborated with team members to enhance code quality and identify performance bottlenecks.
- Followed and incorporated cutting-edge technologies to the company's technology stack.
- Wrote clean code for various projects such as Ring Back Tone (RBT), Bulk SMS Platform, Call Center Manager, and OMNI Channel Service Platform.
Senior Software Engineer
Defne
- Designed and developed a microcredit platform that serves millions of subscribers of a GSM operator, allowing prepaid subscribers with insufficient balance to get credit. The tech stack included Java, JAX-WS, MySQL, Hazelcast, JSF, and Google Guice.
- Contributed to the development of the campaign management module of the Bulk SMS platform that is capable of sending millions of SMS messages to Telecom subscribers within a short period. The tech stack included Java, MySQL, and JAX-WS.
- Troubleshot various cases such as analyzing heap dumps and thread dumps for production systems using profiling tools such as JConsole and JProfiler.
- Performed load tests for distributed systems to detect and resolve performance bottlenecks.
- Handled multiple projects simultaneously, successfully delivering each of them within tight deadlines.
Software Engineer
SFS Ltd.
- Took part in developing the business project management (BPM) module of the insurance platform, which is used to design all processes and workflows for the entire platform.
- Contributed to on-site development of an insurance project in India, engineered new features, and released software updates.
- Designed and developed utilities to migrate customer data from the legacy platform to the new insurance platform.
- Gathered requirements from business analysts and contributed to developing new features and resolving bugs.
Software Engineer
Avukatpro Software Ltd.
- Identified and fixed defects, implemented new features, and boosted the overall performance of existing automation software.
- Refactored and enhanced the law automation platform to organize code, maintain readability, and improve performance resulting in reduced consumption of system resources.
- Wrote SQL scripts, enhanced database views, and conducted database analysis using profiling tools to boost application performance.
Software Engineer
Sentez Software
- Adapted rapidly to the development team and technologies being used throughout the organization.
- Maintained and worked on the development of mobile ERP solutions.
- Performed testing on software to uncover bugs and troubleshoot issues before application launches.
- Worked on the development of the new ERP solution based on WPF.
Experience
HTTP Proxy for Ironsphere
This was a replacement project for an existing application, and I was the primary developer. The application consists of plenty of features such as rate-limiting, auto-login to configured websites, request logging, blocking unauthorized access to web pages depending on the user profile, passthrough mode (used for logging purposes), domain allow listing (allows the defined domains to be accessed by all users), etc. I also worked on troubleshooting the issues and performance improvement. I collaborated with the product team during the design of the new features and worked with them to clear up the customer requirements.
SELENE Authorization Server (Ironsphere)
This was a new project, and I took part in its development. I first started by developing the Identity Provider Service managing user integration. Later I developed a React-based web application as a management UI. With time I got my hands on all other services to maintain the project and became one of the main developers. I also took part in things other than software development, such as managing the EKS cluster, semantic versioning, documentation, etc.
Call Center Manager (Defne)
I was the main back-end developer who worked on the design and development of the application, which was a brand-new project to replace the legacy platform. Some trending technologies were used for message delivery and networking, such as Redis, Kafka, and Netty.
UCELL Promised Payment
I was the primary developer and worked on the design and development of the platform from scratch, including the web service and web application. It was a distributed platform where all available servers worked as active nodes.
In the later steps, I also developed the new features on the SMPP module, which receives the subscriber requests made via their mobile phones.
Education
Bachelor's Degree in Computer Engineering
University of Bahcesehir - Turkey
Certifications
AWS Certified Cloud Practitioner
Amazon Web Services
Skills
Libraries/APIs
JAX-WS, REST APIs, jQuery, React, jQuery UI
Tools
IntelliJ IDEA, Apache Maven, GitLab, ELK (Elastic Stack), Docker Swarm, Kafka Streams, Amazon EKS, JConsole, JProfiler, C#.NET WinForms, Istio, Git, ActiveMQ, GitHub
Languages
Java, SQL, Java 6, Java 8, Java 11, HTML, C#, JavaScript, Visual Basic 6 (VB6), CSS
Frameworks
Spring, Hibernate, Spring Boot, JPA, Netty, Jersey, JUnit, Vaadin, JSF, Google Guice, ASP.NET, ASP.NET Web Services, Windows Presentation Foundation (WPF), GWT, Vert.x
Paradigms
REST, Design Patterns, Microservices
Platforms
Eclipse, Docker, Kubernetes, Oracle, Apache Kafka, CentOS, Linux, Amazon Web Services (AWS), Amazon EC2
Storage
Spring Data JPA, Spring Data REST, MySQL, JSON, PostgreSQL, Microsoft SQL Server, PL/SQL, Hazelcast, Redis
Other
SOAP, RESTful Services, APIs, Back-end, Multithreading, System Design, Distributed Systems, Concurrency, Technical Leadership, Containerization, Multitenancy, Message Queues, Cloud, BPM
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