SUMMARY
Software Engineer with a passion for solving real-world problems through efficient algorithms, clean code, and thoughtful design. I enjoy building well-structured applications by combining strong theoretical foundations with practical implementation, always aiming for clarity, performance, and usability.
Curious by nature, I value learning, collaboration, and continuous improvement-both in technology and as a professional. I'm motivated to contribute to meaningful projects and grow through challenges that push my skills further.
EXPERIENCE
Saitec Cement Industry Automations
- Architected and implemented a comprehensive logistics platform that significantly reduced order processing time and substantially improved operational workflow across departments.
- Designed robust, modular REST APIs for managing orders, vehicles, clients, drivers, cement recipes, and warehouse inventories, achieving outstanding system availability and enterprise-grade scalability.
- Developed and deployed the company's first WordPress corporate website, considerably increasing online visibility and driving a notable increase in customer inquiries.
- Configured and implemented a resilient NAS backup solution that drastically reduced data loss risk and markedly improved disaster recovery time.
- Requirements gathering and design of a innovative weighbridge ERP prototype that positioned to dramatically streamline operations by automating key manual processes upon implementation.
Stack: Java, JavaFX, Spring/Spring Boot, Agile/Scrum, RESTful API, JUnit, JasperReports, JavaScript, HTML, CSS, SQLite, Git, Markdown, WordPress (PHP), Open Media Vault
Self-Employed
- Delivered tailored applications and automation tools for multiple clients, substantially improving their operational efficiency and business workflows.
- Provided one-on-one programming and mathematics tutoring to 20+ university students (Java, C, Python, algorithms, design patterns, calculus), consistently improving student performance and academic results.
- Developed highly reusable code and automation scripts that dramatically accelerated development time for similar projects, enabling rapid delivery of solutions.
Stack: Java, JavaFX, JUnit, JDBC, C, Python, SQL, Linux, AWS, Git, Markdown
Saitec Cement Industry Automations
- Designed and delivered core modules of the initial logistics management system that efficiently processed over 1,000+ orders monthly, substantially reducing order processing time and enhancing operational efficiency.
- Collaborated with cross-functional teams to gather requirements and translate business needs into technical specifications.
- Created comprehensive documentation and tutorials that allowed clients to maintain their systems with minimal external support.
Stack: Java, JavaFX, Agile/Scrum, JUnit, JDBC, SQL, HTML, CSS, Microsoft Access Database, Git, Markdown
PROJECTS
AramosMenu - Mobile Web Menu
- Developed an intuitive mobile-first web app for a beach bar that significantly reduced customer wait time and substantially improved order accuracy.
- Implemented a comprehensive multilingual menu (Greek/English) that dramatically enhanced accessibility for international tourists.
- Engineered performance optimizations for fast loading and offline usage, achieving exceptional page load speeds even on poor network connections.
Stack: HTML, CSS, JavaScript (vanilla), JSON, AWS Amplify, CI/CD, Git, Markdown
Thesis - Smallest Enclosing Circle & Voronoi Diagram
- Implemented Sven Skyum's O(n log n) algorithm for the Smallest Enclosing Circle and Voronoi Diagram in Java 17, reducing theoretical runtime over naive methods.
- Built an interactive JavaFX GUI (MVC) with zoom/pan and export features, enabling real-time geometrical visualization and analysis.
- Parsed CSV/Excel inputs via ApachePOI and OpenCSV, delivering compatibility with common data formats and streamlining user workflow.
Stack: Java 17, JavaFX, Apache POI, OpenCSV, Red-Black VST, MVC & Singleton Patterns, Git, Markdown
GoogleFromLidl - Twitter Comments Search Engine
- Developed a Java Swing desktop application that efficiently indexed 50,000+ Twitter comments using Apache Lucene, delivering consistent sub-second query response times.
- Implemented advanced search features that substantially improved information retrieval precision compared to basic keyword search capabilities.
- Designed an intuitive MVC-based GUI that dramatically reduced analyst search time and enhanced overall user experience.
Stack: Java 11, Java Swing, Apache Lucene, MVC Pattern, SLF4J/Logback, Git, Markdown
AdvencedText2SpeechApp - Text-to-Speech
- Developed a Java Swing desktop application that loads and edits Word (.docx) and Excel (.xlsx) documents and converts them into spoken audio via FreeTTS.
- Implemented multiple software design patterns that significantly reduced code complexity and greatly improved maintainability and extensibility.
- Packaged the app as a Windows native executable using Launch4j.
Stack: Java 11, Swing, Apache POI, FreeTTS, Factory & Decorator & Facade Patterns, Launch4j, Git, Markdown
AdvancedLaTexEditorView - Interactive LaTex Editor
- Developed a Java Swing desktop application that lets users choose from ready‑made LaTeX templates, edit code via utility commands (e.g. “add chapter”), and manage multiple “stratagem” snapshots—enabling non‑linear editing workflows and quick rollback to prior versions.
- Employed the Factory pattern to instantiate LaTeX/HTML parsers at runtime and the Singleton pattern to centralize version‑history management, significantly improving code modularity and maintainability by decoupling parsing, UI, and state logic.
- Added import/export of .tex ↔ .html with automatic conversion, broadening user options for editing and publishing in multiple formats.
Stack: Java 13, Swing, Java I/O, Factory & Singleton Patterns, LaTeX, HTML, Launch4j, Git, Markdown
Minimal++ Compiler - Educational Compiler
- Architected a full end‑to‑end teaching compiler in Python 3 for a C‑like “minimal++” language, covering lexing, recursive‑descent parsing, semantic analysis, and code generation—demonstrating mastery of all major compiler phases.
- Implemented a regex‑based lexer using PLY to tokenize source code into 20+ token types (identifiers, literals, operators), ensuring 100% coverage of the minimal++ grammar.
- Built a comprehensive parser for expressions, control flow (if, while), functions, enforced scope and type rules via a robust symbol table, dramatically reducing semantic errors in test cases.
- Engineered a code generation pipeline that emits intermediate C code and then invokes gcc -S to produce x86 assembly, enabling students to inspect low‑level translations and execution flow.
Stack: Python 3.9+, C, PLY (Lex/Yacc), GCC toolchain, regex, CI‑style scripting, Git, Markdown