My name is Nikos Kastamoulas and I am a software engineer based in Athens, Greece. I am originally from Rhodes island and I graduated from London South Bank University in 2002.
I am interested in software quality, design patterns, large scale systems and I have a natural curiosity to learn and improve. My latest interest is natural language processing and machine learning. I also play a lot of chess.
2016-current - Senior Backend Software Engineer
Part of the team responsible for the development and maintenance of the company’s online retail platform. Undertook several major projects like revamping the platform’s payment system and designing the platform’s unit and integration tests suite.
- Integration Test Suite: Spearheaded the design and development of the Spring based integration test suite for all backend applications. Promoted and advocated for test oriented development. Lead the effort that lead to a test suite of over 700 integration tests and over 60% coverage.
- Online payments: Redesigned and refactored online payments for the company’s e-commerce app to allow for modularization, parallel payment processing and faster user experience.
- Authorizations & Authentication: refactored and re-designed the authorization and authentication module for all user-facing applications to allow for stateless sessions and better performance. Helped avoiding single points of failure and removing the application’s Redis dependency.
2015-2016 - Freelance software consultant
Worked as a freelance consultant on several projects. I was involved in all phases, working with clients to deliver the best possible result.
- 3fullsteps.com: Developed a B2B Hotel,Transfer & Activities booking application based on Spring, Angular and Bootstrap.
- vesselbot.com: Developed a prototype of a shipping industry marketplace for a dynamic greek startup. Based on Spring, Angular and Bootstrap.
- kingdice.com: Developed a complex single page application for a bitcoin gambling site using Angular, Typescript, threejs and bootstrap.
- e-timologio.gr: Developed an online invoicing application as a personal project.
2014 - 2015 - Android developer, backend architect, AWS/System administrator and front-end engineer.
Worked as a full stack engineer in a highly demanding social network project. Was responsible for modeling, architecture and implementation of the components powering the backend. Also responsible for the UI design and development of the Android version (not released yet).
notable achievements: the design of a complex social network application, the design of a budget-friendly fault tolerant architecture on AWS, implementation of a technically demanding android application.
2012 - 2014 - CTO - Cofounder
Co-founder of ncoded+, a company that developed mobile and web applications for the Hospitality and Casino markets. Responsible for the design and development of the server-side software stack and Android applications.
notable achievements: designed and developed SlotPilot, a slot machine management system with live monitoring of cashier and attendant transactions and reporting tools for managerial staff.
2013 - 2014 - Senior Software engineer - Team Leader
Employed as a Senior Software engineer by one of the largest insurance companies in Greece. Lead a team of 3-5 engineers responsible for the implementation of the company’s agents network support portal and tools.
notable achievements: worked for a company that strives for technical excellence, lead a team that delivered modern mobile friendly tools that made a difference in productivity.
2007 - 2013 - Tech Lead
Employed as a junior developer in 2007, and was promoted to the position of Tech Lead within 3 years. My responsibilities included leading a team of 4 developers and 1 systems administrator, software design and development, supervision and coaching of a team of developers, project management, design and monitoring of hardware infrastructure and finally coaching non-technical staff on SEO, project management and other topics.
notable achievements: managed to deliver solutions in an extremely high paced environment while maintaining technical standards (testing, QA, code re-use etc).
Open Source Contributions
java-to-typescript Java pojo to Typescript converter
- Converts Java pojos to namespaced Typescript classes
- Correctly handles inheritance and inner classes
SSSG Scala static site generator
- Local server and watch/build capabilities
- Jade templates
Scala naive bayes classifier A multinomial naive bayes text classifier
- A scala implementation of the naive bayes algorithm
ALAPL A Lightweight Atom Parser Library.
- Fast parsing
- Based on Pull XML
- Suited for mobile applications, especially Android Applications.
- Standards compliant
JMVC Framework A Java web framework.
- Model - View - Controller architecture.
- Built-in Dependency injection framework based on Google Guice.
- High performance database abstraction layer with database caching.
- Used internally in 24 Media as a lightweight framework for faster development times.