I am a Senior Software Engineer (L5) at Google. I am currently working on the Dart programming language.
Indiana University - Bloomington, Indiana, USA. Masters in Computer Science. January 2015 - December 2016.
TOBB University of Economics and Technology - Ankara, Turkey. BSc in Computer Engineering. August 2009 - August 2014.
Google, Senior Software Engineer (Mar 2022 - ongoing)
I am an L5 software engineer, working on the Dart programming language’s Wasm target.
Some examples of my work:
DFINITY, Software Engineer (Jun 2020 - Jan 2022)
I worked on the Motoko programming language compiler and runtime system.
Some examples of my work:
Our work on Motoko’s garbage collector was published at VMIL 2023.
Well-Typed, Haskell consultant (Jan 2018 - Jun 2020):
I was one of the maintainers of the Glasgow Haskell Compiler (GHC). I started contributing to GHC in 2015 and I spent between 30 and 40 hours a week working on GHC between January 2018 - Jun 2020.
Some examples of my work:
I worked on the design and implementation of a new concurrent garbage collector for GHC. Our work was presented at MuniHac 2018. The GC is shipped with GHC 8.10.
I debugged and fixed many tricky bugs. Some examples are:
Picus Security, Software Engineer (Haskell) (Jan 2017 - Jan 2018):
Shipped 30,000+ lines of Haskell (excluding comments and whitespace) implementing most of the server and client programs. Designed wire protocols (for client-server communication) and REST APIs (for UIs).
Microsoft Research, Cambridge. Research Intern (Jun 2016 - Sep 2016):
Worked with Simon Peyton Jones on various GHC projects. Two of the bigger projects are: designing and implementing a new intermediate language for GHC (to replace Core), and implementing a new representation for sum types. The latter is and available to users with -XUnboxedSums flag in GHC 8.2.1 and later.
Indiana University, Master of Science in Computer Science (Jan 2015 - Dec 2016):
Started as a PhD student but switched to masters. Worked with the programming language team, with focus on optimizing Haskell. Some of the other interests during this time: multi-stage programming, partial evaluation, supercompilation, JIT compilation.
Runtime Verification (Sep 2014 - Dec 2014):
Worked on K Framework as a software engineer. Maintained ktest (testing framework), and worked on implementation of a new intermediate language.
Google Summer of Code for Haskell (Jun 2014 - Aug 2014):
Implemented GHC’s profiling features (cost-centres, emulated call stacks) for GHCJS, a JavaScript backend for GHC. Project was successfully finished and merged to GHCJS.
Soostone - 2014 (Jan 2014 - Apr 2014):
Worked as Haskell Software Engineer.
Formal Systems Laboratory, University of Illinois at Urbana-Champaign. 3.5-month internship (Sep 2013 - Dec 2013):
Worked on K Framework, a rewrite-based executable semantics framework for programming languages, type systems and formal analysis tools. Advised by Prof. Grigore Roşu.
Ozyegin University, Istanbul, Turkey. 3.5 month internship (Jan 2013 - Apr 2013):
Developed an interpreter for a statically typed multi-staged programming language with subtyping, row polymorphism, and type inference. Performed extensive literature reading. Implemented in OCaml. Advised by Prof. Barış Aktemur.
OBSS, Istanbul, Turkey. 2012, 3.5-month internship (Jan 2012 - Apr 2012):
Developed a simple static analysis tool for GrayMound, a Java framework based on J2EE and an Eclipse plugin.
TUBITAK (The Scientific and Technological Research Council of Turkey), Kocaeli, Turkey. 4-week internship (Aug 2011):
Developed a web UI for PiSi, package manager of Pardus (a GNU/Linux distribution).
Luc Bläser, Claudio Russo, Ulan Degenbaev, Ömer S. Ağacan, Gabor Greif, Jason Ibrahim. Collecting Garbage on the Blockchain. Published at VMIL 2023.
Ryan R. Newton, Ömer S. Ağacan, Sam Tobin-Hochstadt, Peter Fogg. Parallel Type-checking with Haskell using Saturating LVars and Stream Generators. Published at PPoPP 2015.
Edward Z. Yang, Giovanni Campagna, Ömer S. Ağacan, Ahmed El-Hassany, Abhishek Kulkarni, Ryan Newton. Efficient communication and Collection with Compact Normal Forms. Published at ICFP 2015.
Michael D. Adams and Ömer S. Ağacan. Indentation-sensitive parsing for Parsec. Published at Haskell Symposium 2014.
Indiana University - Bloomington, Indiana, USA. Masters in Computer Science. 2015 - 2016.
TOBB University of Economics and Technology - Ankara, Turkey. BSc in Computer Engineering. 2009 - 2014.