Thomas Sarmis
Interested in
System Architect or Senior Engineer
Online version
greek developer

My name is Thomas, I like to build software, from small embeded software to large-scale online systems. My professional experience is mainly on back-end gambling systems. I’m always looking forward to facing new challenges

Work Experience

Senior Software Engineer at GML Interactive (Stoiximan & Betano) (July 2019 - now)

At stoiximan I am part of a team that builds proprietary, betting-related related softwares

System Architect at Icon Gaming (April 2015 - June 2019)

At Icon Gaming I lead a team that develops gambling solutions focused on slot games and “soft” games. My responsibilities are to design the architecture of the system and develop the core modules (Database, Game server, Game Logics, 3rd-party integrations). Our team has developed a GLI 11 certified standalone slot machine, an online slot gaming platform and various soft games for external partners.

Software Engineer at Indie Gaming (Nov 2010 - March 2015)

At Indie Gaming I was responsible for developing the core modules of our local-area based gambling system, the game server and the game logics. I was also responsible for integrating our system with 3rd party systems (like Intralot’s Lottos system). The Indie Gaming team continued as Icon Gaming.

R & D Engineer in F.O.R.T.H./Computational Vision & Robotics Lab (Sep 2007 - Sep 2010)

At FORTH/CVRL I was responsible for building prototype applications that demonstrated the current state of the art techniques in the field of computer vision and 3D reconstruction. My focus was on developing a system that was capable of distributed & synchronized image acquisition from multi-camera systems, and online and offline processing via a modular platform in multiple processing nodes (cpu & gpu) in order to extract high level information and communicate it to other systems. Also, a set of utilities was developed to facilitate system’s coordination and camera cluster calibration.


  • C#
  • .Net Core & Entity Framework Core
  • SQL Server
  • Delphi
  • Javascript
  • Vue / Vuetify
  • Firebase
  • Node.js
  • HTML / CSS
  • Git
  • Python


  • Department of Computer Science, University of Crete (Msc) Sep 2003 - Apr 2006

  • Department of Informatics Engineering, TEI of Crete (Bachelor) Sep 1999 - Sep 2003


I have personally designed & developed (more than 90% of the code and database) the following projects:

  • Recipe and diet management web app (Firebase / Javascript / Vue, 2019, Personal). A webapp (PWA) that provides a way for an individual or family to program their weekly diet by selecting predifened or custom recipes and generates the shopping list for these items. (, it is still a work-in-progress)

  • Online (web based) gambling platform (.Net Core / SQL Server / Vue, 2018, Icon Gaming). I designed and developed the game server, the game logics, the database, the testing framework, and the back-office (web interface) - The game clients where developed by other members of the team.

  • Slot logic module (C#, 2018, Icon Gaming) with support for multiple features (free-games, bonus, progressives), with modular architecture that allows introducing new features while minimizes cross-feature incopatibilities.

  • Zero-downtime (almost) deployment tool (Node.js, 2018, Icon Gaming), that provides an automated way to deploy the system to a remote server with almost zero downtime ( it depends on the definition of downtime, but the client experience is not disturbed in any way)

  • Curator (Node.js / SQL Server / Vue, 2017, Private Client) A Museum collection management web app.

  • Database deployment and test tool (Python, 2017, Icon Gaming). A tool that deploys a database and runs unit tests against it.

  • SAS communication module (Dephi, 2017, Icon Gaming) for our standalone gaming machine.

  • A stand-alone, GLI-11 certified, slot machine (EGM) (Delphi / SQL Server, 2016, Icon Gaming). I designed the system’s architecture and developed the database, the game server, and the slot game logics. The game clients and the management interface where developed by other members of the team.

  • Slot logic module (Delphi, 2015, Icon Gaming) with support for multiple features like free-games, bonus rounds, and progressive awards, was certified by GLI as GLI 11 compliant.

  • Integrations for soft games (Delphi, 2013, Indie Gaming). Integrations with 3rd-party systems for our games.

  • Kinect / Animata bridge (C#, 2012, Private Client). A simple bridge/proxy application that receives data from the Kinect sensor, process them and transmits them to the Animata application, the target was to have a 2-D model mirror the movements of a person.

  • Game logics for “soft” games (Delphi, 2011, Indie Gaming) Multiple game logics for soft (non-casino) gamble games (like match-three, etc) that were deployed in lotteries.

  • Geotagger (C#, 2010, Personal). Very simple application that communicates with google earth to geo-tagg jpeg(s).

  • Makedonopixels - “Macedonia: from fragments to pixels” (Delphi / OpenCV, 2009, FORTH/CVRL & AMI Program). The exhibition features applications based on the multicamera platform. I developed the image acquition and image processing modules, the UI cient was developed by other members of the team.

  • Distributed Multi-camera platform for 3D reconstruction of volumes (Delphi / OpenCV, FORTH/CVRL, GRASP & AMI Program, 2007 - 2010). The platform supports distributed & synchronized image acquisition and distributed processing across multiple computers. The processing software provided a UI for combining & configured the computer vision processing modules in order to provide a test-bed for implementing computer vision processing pipelines.

  • Trinocular System with structured light (Delphi / OpenCV, 2009, FORTH/CVRL) The system features a construction where three cameras and a light source are mounted. The light source projects structured light (light patterns) in the infrared spectrum facilitating the reconstruction of otherwise visually featureless objects. The intended purpose was to be able to reconstruct very small objects (4 < cubic cm). I provided the image acquitition and flow control code, the 3D reconstruction code was developed by other members of the team.

  • Multispectral Images Registration Tool (C# / OpenCV, 2009, Private Client) A software tool that enables the spatial registration of multispectral images that are misaligned due to the acquisition method involving movable filters that induced shacking. In order to extract accurate measurements across the spectrum the images must be aligned.

  • Multi-camera calibration toolkit (Delphi / OpenCV, 2007, FORTH/CVRL)

  • MultiSens - Cameras as Multifunctional Sensors for Automated Processes (Delphi, 2006, Master Thesis). My Master thesis was part of the deliverable of ICS-FORTH/CVRL for the European project multisens. Specifically, the proof-of-concept software that demonstrated the case for using cameras as sensors was my master thesis

  • Custom Information Management System (Dephi, 2003, Private Client) A simple system that enabled the recording a monitor of the procedures of Ε.Φ.Ε.Τ. Ηρακλείου

  • ActiveX Live Chart Renderer (Delphi, 2001) A Custom ActiveX object that rendered a chart based on live data as a jpeg image to be used in web sites

  • WEB SMS Service automation hack (Delphi, 2001) A dll that enabled automatically sending an sms via an sms web service when an important e-mail arrived at our mail server

  • ActiveX Wrapper for the windows user management API (Delphi, 2000) An ActiveX wrapper for common user management functions of windows that was build in order to enable user and access management from ASP websites


  • Smart Sensor Based Vision System for Automated Processes Emerging Technologies, Robotics & Control Systems, ISAR Jun. 2007 A.A. Argyros, G. Bártfai, C. Eitzinger, Z. Kemény, B.Cs. Csáji, L. Kék, M. Lourakis, W. Reisner, W. Sandrisser, T. Sarmis, G. Umgeher, Z. Viharos

  • A prototypical Interactive Exhibition for the Archaeological Museum of Thessaloniki Heritage in the Digital Era 2013 D. Grammenos, X. Zabulis, D. Michel, P. Padeleris, T. Sarmis, G. Georgalis, P. Koutlemanis, K. Tzevanidis, A.A. Argyros, M. Sifakis, P. Adam-Veleni, C. Stephanidis

  • Multicamera human detection and tracking supporting natural interaction with large scale displays MVA Journal 2013 X. Zabulis, D. Grammenos, T. Sarmis, K. Tzevanidis, P. Padeleris, P. Koutlemanis, A.A. Argyros

  • Macedonia from Fragments to Pixels: A Permanent Exhibition of Interactive Systems at the Archaeological Museum of Thessaloniki EuroMed Nov 2012 D. Grammenos, X. Zabulis, D. Michel, P. Padeleris, T. Sarmis, G. Georgalis, P. Koutlemanis, K. Tzevanidis, A. A. Argyros, M. Sifakis, P. Adam-Veleni, C. Stephanidis

  • Smart Sensor Based Vision System for Automated Processes Factory Automation, Robotics and Soft Computing, Thomson Scientific Jul 2007 A.A. Argyros, G. Bártfai, C. Eitzinger, Z. Kemény, B.Cs.Csáji, L. Kék, M. Lourakis, W. Reisner, W. Sandrisser, T. Sarmis, G. Umgeher, Z. Viharos

  • Design and Development of Four Prototype Interactive Edutainment Exhibits for Museums HCI International July 2011 D. Grammenos, X. Zabulis, D. Michel, T. Sarmis, G. Georgalis, K. Tzevanidis., A.A. Argyros, C. Stephanidis

  • A platform for monitoring aspects of human presence in real-time ISVC Nov 2010 X. Zabulis, T. Sarmis, K. Tzevanidis, P. Koutlemanis, D. Grammenos, A.A. Argyros

  • Exploration of large-scale museum artifacts through non-instrumented, location-based, multi-user interaction VAST Sep 2010 X. Zabulis, D. Grammenos, T. Sarmis, K. Tzevanidis, A.A. Argyros

  • From multiple views to textured 3D meshes: a GPU-powered approach CVGPU in conjuction with ECCV Sep 2010 K. Tzevanidis, X. Zabulis, T. Sarmis, P. Koutlemanis, N. Kyriazis, A.A. Argyros

  • A Pioneer Approach in 3-D Imaging of Psoriatic Lesions Symposium of the Greek Society for Dermatology Jan 2010 A. Kokolakis, K. Lasithiotakis, P. Psycharakis, K. Krasagakis, S. Kruger-Krasagakis, X. Zabulis, T. Sarmis, G. Georgiadis, C. Stephanidis, A. Manios, A. Tosca

  • 3D head pose estimation from multiple distant views BMVC Sep 2009 X. Zabulis, T. Sarmis, A.A. Argyros

  • Rapid Prototyping of an AmI-augmented Office Environment Demonstrator HCI: Ambient, Ubiquitous and Intelligent Interaction Jul 2009 D. Grammenos, Y. Georgalis, N. Partarakis, X. Zabulis, T. Sarmis, S. Kartakis, P. Tourlakis, A.A. Argyros, C. Stephanidis

  • Building a multi-touch display based on computer vision techniques MVA May 2009 D. Michel, A.A. Argyros, D. Grammenos, X. Zabulis, T. Sarmis

  • A multicamera vision system supporting the development of wide-area exertainment applications MVA May 2009 X. Zabulis, T. Sarmis, D. Grammenos, A.A. Argyros

  • Robust and Efficient Event Detection for the Monitoring of Automated Processes VIE - Invited contribution Sep 2006 T. Sarmis, A.A. Argyros, M.I.A. Lourakis, K. Hatzopoulos

  • A Checkerboard Detection Utility for Intrinsic and Extrinsic Camera Cluster Calibration Technical Report, ICS-FORTH 2009 T. Sarmis, X. Zabulis, A.A. Argyros

  • A Software Platform for the Acquisition and Online Processing of Images in a Camera Network ERCIM News Jan. 2009 T. Sarmis, X. Zabulis, A.A. Argyros