Thomas Sarmis, Principal Engineer
Contact Profession Online CV Git Hub Git Lab
thomas.sarmis@gmail.com Software Architect / Principal Engineer https://greekdeveloper.com/cv https://github.com/sarmis (used mainly for contributing) https://gitlab.com/greekdev & https://gitlab.com/sarmis.gr
Introduction
My name is Thomas. I like to build software, from small embedded software to large-scale online systems. Currently I am building large-scale, microservice based backends for a gambling software provider.
Experience
Kaizen Gaming (Stoiximan /Betano) (July 2019 - present)
At Kaizen Gaming, as a Software engineer, Tech Leader, Software Architect, and, currently, as a Principal Engineer, I was responsible for leading the team that developed the external integrations of the new sportsbook platform that was developed for in-house use. The sportsbook platform is responsible for offering betting options for hundred of concurrent live events and handing hundred of thousands of online users during it's peak hour. The external integrations are responsible for providing real time data regarding both the state of the live events and suggested pricing for their betting options. As a Principal Engineer my responsibilities extend across multiple domains, from system performance and uptime to designing flexible architectures for our systems.
Icon Gaming (April 2015 - June 2019)
At Icon Gaming, as a Software Architect, I lead a team that developed gambling solutions focused on slot games and “soft” games. My responsibilities were to design the architecture of the system and develop the core modules (Database, Game Server, Game Logics, 3rd-party integrations). We developed a GLI 11 certified standalone slot machine, an online slot gaming platform and various soft games for external partners.
Indie Gaming (Nov 2010 - March 2015)
At Indie Gaming, as a Software Engineer, 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.
F.O.R.T.H./Computational Vision & Robotics Lab (Sep 2007 - Sep 2010)
At FORTH/CVRL, as R & D Engineer, 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.
Tools
After 20+ years in software engineering I have used a lot of tools either professionally or for personal projects or just out of curiosity, the following stand out:
Used Professionally
- .Net Core / .Net / C#
- SQL Server / TSQL
- RabbitMQ / Kafka
- Redis
- Prometheus / Grafana / Graylog
- Git
- Delphi (up to ~2019)
- Containers
Used Personally
- Node.js
- HTML/CSS/JS
- Vue.js
- Python
- Firebase
- GitOps & CI/CD
Open Source Contributions
While working in Kaizen I have found and fixed a couple of issues in EasyCaching library and we decided to push them upstream.
- Fix connection leakage using DisposableObjectPool
- Restore Queue & Consumer on Disconnection
- Use RabbitMQ Streams instead of Queues
Personal Projects
Convert a TV or Monitor to a simple digital display using a Raspberry PI and Magic-Mirror
Publications
During my days in F.O.R.T.H (as a MSc student and, later, as an R & D Engineer) I co-authored a few publications:
- 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