Senior Software Engineer2019 - PRESENTFreelancer
- Developed the Java back-end to enable direct bookings at a travel meta-search company.
- Built a game in React that evaluates how memorable different types of ID icons (identicons) are.
Squad Leader2017 - 2017Skyscanner
Technologies: Python, AWS, Docker, Ruby, Rails, Angular
- Managed a team of five engineers and one designer to build a concierge feature inside the Skyscanner mobile apps that served millions of users worldwide.
- Represented the team to the rest of the company and coordinated with stakeholders (internal and external to the company) to build our product.
- Released a chat interface inside the iOS app, allowing communication between users and the concierge team.
- Designed the back-end service that provided the functionality required by the concierge team to assist users, such as exchanging messages, processing user requests, and making bookings on the users' behalf (flights, hotels, trains, VIP lounge passes, etc.).
- Designed the back-end service responsible for processing payments, refunds, vouchers, and fraud prevention.
Senior Software Engineer2015 - 2017Skyscanner
Technologies: Ruby, Rails, Python, AWS, Heroku, Docker, Sidekiq, Angular
- Spent over two years coding in Rails and Sinatra in an ecosystem of microservices that powered our corporate traveling platform.
- Single-handedly designed and implemented a payment system that was very critical for the success of the product. This system was responsible for issuing virtual credit cards, monitoring transactions, billing clients, and auditing. Received an award from the company 1 year later, after it had already processed millions of dollars worth of transactions.
- Designed and implemented fraud prevention features that detected, reported, and prevented fraudulent activity that would have resulted in a loss of thousands of dollars.
- Built a calendar integration service that was responsible for creating trip events in user calendars and analyzing the same calendars to detect events requiring trip creation.
- Built numerous other features and became the go-to person for any issue related to the back-end.
- Led teams of engineers and designers to define and implement features from back-end to front-end.
R&D Software Engineer2013 - 2015Skyscanner
- Evaluated tools for developing a mobile cross-platform development library to be shared between our native apps, developed prototypes, and published the results in a series of blog posts.
- Developed an iOS app that gamified traveling, provided travel inspiration, and allowed travel suggestions among friends.
- Developed a domain-specific language with a parser for flight searches.
- Developed the concept of "pain score" in flight searches which is composed of several flight attributes and tailored to each user. This helped improve flight results relevance by promoting painless flights.
- Implemented a novel flight sorting algorithm and A/B tested it in the Skyscanner web page that serves millions of users daily.
- Oversaw the development of a new mobile app with inspirational travel images from all over the world.
Software Engineer2013 - 2013The University of Glasgow
- Explored the potential uses of external sensors along with 3D audio in iOS devices in a research project funded by the university.
- Investigated the effectiveness of different types of 3D sounds when guiding a user inside a city, aided by the sensors of an intelligent headset.
- Performed user testing to validate the initial findings.
- Produced a scientific paper.
Software Engineer2012 - 2012The University of Glasgow
Technologies: Brain-Computer Interaction, Python, Java, OpenGL, Information Retrieval
- Added song browsing functionality to a BCI (brain-computer interaction) media player intended for disabled people.
- Indexed a Wikipedia article dump, allowing the media player to query and present information about artists and songs.
Java Tutor2012 - 2012The University of Glasgow
- Helped 2nd-year students at the weekly Java labs to understand the language and OOP paradigms.
Software Engineer2011 - 2011Foundation for Research and Technology - Hellas (FORTH)
Technologies: C++, JNI, Java
- Wrote a C++ API for a Java application responsible for creating 3D representations of archaeological artifacts, using the Java Native Interface (JNI).
Civil Engineer2009 - 2010Freelancer
- Designed and supervised the building of a 500 square meter production facility.