Christos Tsakostas
Verified Expert in Engineering
Web Applications Developer
Christos architects and implements software solutions that help businesses grow and succeed. His greatest expertise is solving problems efficiently by combining knowledge from a diversity of fields and technologies. He has worked for numerous clients and industries including startups and enterprise organizations. Bolstered by a master's degree in electrical and computer engineering, he's been professionally developing full-stack software since 2001.
Portfolio
Experience
Availability
Preferred Environment
Amazon Web Services (AWS), GitLab, IntelliJ IDEA, MacOS
The most amazing...
...thing I've done is help a startup fintech company grow and expand to new markets by transforming a legacy system into a microservice-based one with DDD.
Work Experience
Java and Spring Technical Lead
iptiQ Life
- Reduced the AWS costs of Amazon DocumentDB with MongoDB compatibility by around 95 times by compressing huge quotes of around 10MB down to about 0.1MB.
- Organized and contributed to the automatic creation of insurance product configurations that were previously manual, saving hundreds of hours and thus costs.
- Implemented a Markov-Chain model in Java to calculate present value used in premiums calculations.
Software Architect and Engineer
Netcompany-Intrasoft
- Implemented a RESTful Java client as a microservice based on the Hyperledger Fabric blockchain for the registration of trademarks. The client was the European Intellectual Property Office.
- Implemented a microservice for shortening long URLs into six characters based on a given corpus. The adaptive algorithm automatically increases the number of characters required for the path as soon as the current limit is exhausted.
- Contributed to the project GIView for the geographical indication of products. The client was the European Intellectual Property Office.
- Improved the user experience by generating server-sent events, rendered at the UI as a vertical timeline of trademark changes in real time whenever a trademark was added or updated. The client was the European Intellectual Property Office.
Solution Architect and Full-stack Developer
CAST
- Continued the development of the company's Drupal website, which was initiated by another vendor. Fixed several bugs in the initial implementation and implemented change requests according to the client's requirements.
- Adjusted according to the client's requirements the Drupal theme, which was based on Bootstrap 4, SCSS, and jQuery.
- Proposed, designed, and developed a Java application called Staticfy for converting a Drupal website into a static one. This means increased performance, better security, and lower hosting costs for the client.
- Developed a Drupal module for search capabilities in the static site. Drupal's search capability is based on PHP. Since PHP code cannot be executed in a static site, the alternative was implementing search functionality with Ajax and JavaScript.
- Set up a SORL server at an AWS EC2 instance required for the search functionality of the website.
- Developed a Drupal module for handling the submission form of user requests. The submitted data are sent via jQuery and Ajax to the AWS Gateway API, which calls an AWS Lambda function. The function sends a confirmation email to the user and client.
- Architected and implemented the whole infrastructure at AWS with Terraform. This work included the following services: S3, CloudFront, Route53, EC2, SES, ACM, KMS, EFS, API Gateway, Lambda, and DynamoDB.
- Architected and implemented GitLab pipelines for deployment at the content environment, execution of Staticfy and deployment to the staging environment, and deployment to the production. The client handles deployment at will.
Solution and Software Architect and Engineer
ViaBill
- Architected a microservices infrastructure and implemented libraries for asynchronous communication of microservices based on domain events.
- Designed and implemented the integration to the Stripe payment gateway for online payments during checkout and offline recurring charging of installments.
- Analyzed, designed, developed, and tested, in close cooperation with the lawyers of the company, a microservice for GDPR compliance.
- Developed a REST API for the checkout UI used in the USA and Spain.
- Applied CQRS and developed projections for feeding data to the machine learning algorithms developed by the business analytics department.
- Participated in business workshops and contributed to business decisions related to the company's products.
- Mentored several senior developers and introduced them to the philosophy of domain-driven design (DDD).
- Turned a legacy monolithic system into a modern microservices-based one with significant enhancements in architecture, codebase structure, and processes.
- Developed a web scraper to retrieve messages in the dead letter queues from the ActiveMQ web console by parsing the HTML code. The scraped data were shown on the administration UI, and administrators were able to replay the messages at will.
- Integrated the core engine with external providers for phone number validation and credit card info verification.
Software Architect and Engineer
Trasys International
- Architected, designed, and implemented an asynchronous messaging system that supports the handling of XML messages sent by cooperating parties for safety reports of clinical trials. My client was the European Medicines Agency.
- Analyzed and developed a set of modules for Tractebel's Power System Analysis Platform related to energy and infrastructure projects.
- Architected and designed structures for the CHESAR software application system. Participated in discussions with the domain experts and implementation of models for the chemical assessment of substances. My client was the European Chemicals Agency.
Senior Software Engineer
Custom Software Solutions
- Architected and participated in the development of the back-end system for Western Union Greece. Integrated the core system with the central system of Western Union in the USA for the execution and management of money transfer transactions.
- Developed a plethora of front-end applications supporting the back end of Western Union Greece.
- Built a web application for the management of advertisements in the annual magazine of ICAP.
- Contributed to the new e-banking system for the National Bank of Greece.
Software Analyst, Architect, and Engineer
Freelance
- Contributed to the development of an application for loan application management. My client was Eurobank.
- Developed software for research projects related to audio. The client for this project was Ionian University in Greece.
- Built software for research projects related to e-learning. My client was the National and Kapodistrian University of Athens.
- Created an application processing XML files to produce the daily program of TV channels for On Telecoms.
- Wrote an application for the evaluation of olive oil. My client was Rodax Agro.
Software Engineer
Mat
- Developed a Windows printer driver for electronic signature devices.
- Built an application for the management of orders in restaurants.
- Created an application for coding, decoding, and transfer of audio and video in real time.
Experience
The Trinity Architecture
https://medium.com/oregor/the-trinity-architecture-c89ed5743c1eStaticfy: A Static Generator for Dynamic Websites
https://www.cast-inc.com/Polyfono: Chrome Extension for Audio Plugins in the Web Browser
https://polyfono.com/Direct link to Polyfono chrome extension: https://chrome.google.com/webstore/detail/polyfono-beyond-web-audio/ddfmaafkofhfomabgnlgegmecbabidgb
A presentation of the extension's architecture: https://www.slideshare.net/ChristosTsakostas/architecting-an-audio-plugin-host-as-web-extension
An article related to Web Audio API used in the chrome extension: https://medium.com/@tsakostas/web-audio-api-in-4%C2%BD-figures-89ae9f872e9e
ARIA-3D: Chrome Extension & Web Player for 3D Sound Within a Web Browser
https://aria3d.comMedium article: https://medium.com/aria3d/virtual-surround-sound-for-two-speakers-with-aria-3d-4ad167b7c054
Conference paper: https://www.researchgate.net/publication/308889995_Novel_Binaural_and_Transaural_Rendering_within_the_Browser
Skillset
Paradigms
Back-end Architecture, Continuous Development (CD), Object-oriented Programming (OOP), Microservices, CQRS, Continuous Integration (CI), RESTful Development, REST, Continuous Deployment, DevOps
Other
Domain-driven Design (DDD), Software Architecture, Web Applications, Ajax, Full-stack, Web Scraping, Team Leadership, API Integration, Architecture, Technical Leadership, Back-end Development, APIs, Back-end, Mentorship & Coaching, Mentorship, Team Mentoring, Stripe Payments, Amazon Route 53, Fintech, Payment Gateways, Card Payments, Payment APIs, Payment Security, Web Development, Scraping, Content Management, Serverless, Chrome Extensions, Material Design, Financial Services, Audio, Visualizer, Solution Architecture, Financial Modeling, Integration, Systems Analysis, Communication, Coaching, Amazon API Gateway, DSP, Server Sent Events (SSE)
Languages
Java, HTML5, JavaScript, CSS, SCSS, HTML, TypeScript, SQL, C, C++
Frameworks
Spring, Spring Boot, Redux, Jakarta Server Pages (JSP), Spring MVC, Angular 6, Apache Camel, Angular, Bootstrap, JUnit, Mockito, JSF, Hibernate
Libraries/APIs
Web Audio API, REST APIs, React, jQuery, Node.js
Tools
Emscripten, GitLab, Amazon Simple Email Service (SES), Git, Apache Maven, Apache Tomcat, ActiveMQ, Cucumber, Terraform, Packer, GitLab CI/CD, Jira, Confluence
Platforms
AWS Lambda, Amazon Web Services (AWS), Amazon EC2, Drupal, Kubernetes, Docker, Apache Kafka
Storage
Amazon DynamoDB, Amazon S3 (AWS S3), MariaDB, MongoDB, MySQL, PostgreSQL
Education
Ph.D. Candidate and Researcher in Acoustics
Ruhr University - Bochum, Germany
Master's Degree in Electrical and Computer Technology Engineering
University of Patras - Patras, Greece
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring