Job Experience
During summers, I have interned in the following companies (presented in the reverse chronological order).
Microsoft Research (MSR), Redmond, USA: Summer’13
Why do developers transition from centralized to decentralized version control systems? I found that the incremental development via offline commits and context switching via lightweight branches are the major motivations. The study also explains the transition barriers and outcomes. I interviewed 10 developers and surveyed on 70 developers.
Mentors: Christian Bird, Nachi Nagappan, and Jacek Czerwonka
Mentors: Christian Bird, Nachi Nagappan, and Jacek Czerwonka
Facebook, Palo Alto, USA: Summer’12
It is difficult to detect the cause of such non-bisectable test failures. I implemented trace serialization and analysis to better understand such failures.
Mentor: Damien Sereni
Mentor: Damien Sereni
Microsoft Research (MSR), Redmond, USA: Summer’11
Collaboration conflicts can be very difficult to resolve and delay software development. I showed that these conflicts can be detected proactively, before they happen. I implemented Beacon, which warns developers the moment a conflict between two development branches occurs.
Mentors: Christian Bird, Thomas Zimmermann, and Judith Bishop
Mentors: Christian Bird, Thomas Zimmermann, and Judith Bishop
Byte (Net-Safe) Company, Turkey: August’09
I implemented two client-side applets and one server-side daemon. These applets enable customers to see network logs in real time.
University of Twente, the Netherlands: June-August’08
I implemented an Object Constraint Language (OCL) interpreter built on OGML Anthology, which is a meta language developed by Ivan Kurtev. The interpreter was implemented using Java and used in a Model Driven Architecture (MDA) project in the University of Twente.
Mentor: Ivan Kurtev
Mentor: Ivan Kurtev