Software Developer
2018 - 2019Toptal client- Created a public-facing web application with a serverless framework.
- Created a serverless back end in Python on AWS Lambda and API Gateway.
- Developed and maintained the front end, implemented with AngularJS.
- Optimized the cost resulting in more than 50% saving on the AWS bill.
- Mentored developers and reviewed pull requests.
- Improved performance by reengineering caching on CloudFront/S3.
- Created serverless workflows using AWS Step Functions to integrate with external services.
Technologies: Amazon Web Services (AWS), AngularJS, Python, Serverless, AWSSoftware Development Engineer
2017 - 2018Amazon- Developed and maintained the orchestration platform that processes Amazon’s catalog updates. The platform is able to handle tens of thousands of TPS, enabling the finest and largest catalog on earth. Uses Kinesis as the backbone and routes updates to the catalog to relevant downstream services.
- Added further functionality to a Node.js service which is a high TPS REST service for diff analysis.
- Refactored an orchestration engine which consumes Kinesis and calls downstream services such that the application can be started without any dependencies, thus enabling performance testing of the core.
- Supported the reconciliation engine (Java 8) that generates the retail catalog.
- Carried out live migrations of several web services without downtime. Successfully deprecated multiple legacy services in an effort to simplify the overall architecture and enable catalog growth.
Technologies: Amazon Web Services (AWS), Docker, JavaScript, Elasticsearch, PostgreSQL, DevOps, Agile, Spring, Linux, Node.js, AWS, Perl, JavaSenior Software Engineer
2013 - 2017Intertech- Supported the workflow engine (C#, Windows service) serving banking applications such as loans, customer complaints etc.
- Set up elastic to index workflow engine documents, enabling powerful search mechanisms for the end user.
- Designed and implemented a workforce management system that empowers the bank's operation center. The application uses Microsoft's solver foundation to solve the task assignment problem. This project got an award: https://www.bai.org/globalinnovations/awards/2017-winners/2017-internal-process-innovation-award.
Technologies: DevOps, JavaScript, Unit Testing, Agile, REST, Elasticsearch, Microsoft SQL Server, C#, .NETSenior Software Engineer
2011 - 2013Ziraat Teknoloji (formerly Fintek)- Designed and implemented workflow engine running on top of Oracle, serving over 100,000 workflow instances daily.
Technologies: Oracle, Windows Presentation Foundation (WPF), WinForms, C#, .NETSoftware Engineer
2010 - 2011AirTies Wireless Networks- Implemented Teletext for the IPTV set-top box using C++.
- Developed a subtitle parser in C.
- Implemented a high-performance transport stream parser in C.
Technologies: Perl, Python, IPTV, RTSP, Linux, BusyBox, C++, CSoftware Engineer
2009 - 2009CC Yazılım- Designed and implemented a cross-platform desktop client in C++ utilizing wxWidgets GUI toolkit. The client database is SQLite.
- Designed and implemented the corresponding backup server in Java (J2SE). An application-level protocol is implemented for client-server communication, secured via SSL (OpenSSL). Stored files are encrypted (AES).
- Designed (visual design excluded) and implemented a web portal for serving online backup users. Users can download/browse backed up files through the portal. MySQL, Apache web server, and django framework are utilized.
Technologies: SQLite, Apache HTTP Server, MySQL, OpenSSL, wxPython, Django, Python, wxWidgets, C++, Java