Services

Technologies and courses supported

What students and professionals achieve through my work:

  • Level up programming skills with practical, real-world guidance
  • Understand complex codebases quickly and confidently
  • Debug difficult issues that block progress
  • Design clean, maintainable architectures
  • Prepare projects, assignments, and theses with clarity and structure

Core technologies I work with regularly include:

  • Programming languages: C (ANSI and POSIX), C++, Java, Python, C#, MIPS
  • Frameworks: Java EE (Model 1 / Model 2), Spring Boot (Web, JPA, Lombok, MapStruct), Bottle, MPI, Android, Laravel, Jersey, FastAPI
  • Javascript frameworks: Vue.js, Angular
  • Libraries: OpenMP, Keras, pthread, libcrypto etc
  • Microframeworks: Lumen
  • Databases: SQL (Standard, MySQL, SQLite and T-SQL among others)
  • CMS: WordPress, moodle
  • Markup languages: HTML, CSS etc
  • Script languages: Bash, PHP, JavaScript, j-query, Python

Recommended stacks for start

The following stacks are recommended while progressing through the different learning stages. As your experience increases, other technologies can also be used.

Beginner level:

  • MySQL as RDBMS
  • Laravel (REST server) or Jersey or FastAPI
  • PHP unit for testing
  • Vue.js (with Webpack, babel and npm) and Vuetify or BootstrapVue
  • PHP build-in server as web server

Beginner to intermediate level:

  • MySQL as RDBMS
  • Spring boot for the backend
  • Vue.js (with webpack, babel and npm) and Vuetify or BootstrapVue
  • Apache Tomcat as web server or frankenphp

Intermediate to advanced level:

  • MySQL as RDBMS
  • Spring boot for the backend
  • RAML as modelling language
  • React.js (with webpack, babel and npm) and Materialize or Bootstrap
  • Apache Tomcat as web server
  • JSON:API as API specification

Advanced level:

  • MySQL as RDBMS
  • Liquibase for database tracking
  • Spring boot for the backend
  • RAML as modelling language
  • MapStruct for entity to resource mapping (or if not possible Dozer)
  • React.js (with webpack, babel and npm) and Materialize or Bootstrap
  • with additional tools:
    • Maven
    • JUnit
    • Lombok
    • Hoppscotch or POSTMAN
    • JSON:API as spec
    • optionally docker and Kubernetes

For rapid development:

  • MySQL as RDBMS
  • FastAPI for the backend with DETA as hosting service
  • Vue.js (with Webpack, babel and npm) and Vuetify or BootstrapVue

or:

  • MySQL as RDBMS
  • Laravel with Orion and Orchid (for the backend)
  • Vue.js (with Webpack, babel and npm) and Vuetify or BootstrapVue

Certifications

Preparation for certifications can also be provided upon request, specifically for Java-related and Cisco-related certifications (entry level).

For languages and technologies not mentioned above, a meeting is recommended beforehand.

Sample Courses List (representative)

University Of Athens

Department of Informatics

  • Introduction to programming (C, ANSI)
  • Object Oriented Programming (C++/Java)
  • Operating Systems (POSIX C, C++)
  • System Programming (C/C++/Bash)
  • Software development (Android/Python Keras/CGAL/C/C++)
  • Database design (Python, SQL, C/C++)
  • Database implementation (C/C++)
  • Parallel systems (C/C++ MPI, Open MP and CUDA)
  • Network management (varies)
  • Sensor Networks (varies)
  • Computer architecture (MIPS)

Department of Physics

  • Computers 1 & 2 (C/C++)
  • Operating systems (Computer Systems)  (C/C++)
  • Numerical analysis and Computational mathematics  (C/C++/Java/Matlab)

Other departments

In general, the other departments present low level of difficulty on computer science fields.


Athens University of Business and Economics

Department of Informatics

  • Introduction to programming (Python)
  • Object oriented programming (Java)
  • Programming with C++ (C++)
  • Distributed systems (Java 8+, Android SDK)
  • Computer architecture (MIPS)
  • Databases (SQL)
  • Database design (varies)
  • Web applications (Java EE etc)

Department of Management Science and Technology

  • Introduction to computer science
  • Programming 1
  • Programming 2

Other departments

In general, the other departments present low level of difficulty on computer science fields.