Athens, Attiki, Greece
Mastery isn’t an endpoint; it’s a journey of practice, patience, and persistence. I’m a software developer and engineer, dedicated to solving problems with the best practices I know. To me, good code is readable, simple, and minimalistic. It’s rigorously tested and built for efficiency, often with tools that automate and streamline processes. I’m constantly learning—watching tutorials, exploring new materials, and staying sharp. Expertise in a single language means little to me; what matters are high-level concepts, adaptability, and the ability to learn efficiently. Picking up a new programming language is easy. Unlearning bad habits is the real challenge. I’m also a scientist, and a scientist never stops questioning or learning. The truths of today can become obsolete tomorrow. That’s why I constantly seek new sources of information, embrace fresh practices, experiment boldly, and learn from failure. Progress demands movement, openness to change, and curiosity. Beyond that, I’m a classical guitarist. My practice is deliberate and patient. I don’t rush through new pieces; instead, I focus on forming neural pathways with care and strategy. Excellence takes time, effort, and rest—patience is everything. These values define how I approach my work and life. For too long, work has been framed as something exhausting—a means to an end, detached from joy. I reject that narrative. I believe work should come from the heart. A fulfilling life requires a fulfilling job, and I’m here to build both.
In my previous role at Wavelia, I was at the forefront of a groundbreaking multidisciplinary project, pioneering the development of an innovative system for breast cancer diagnosis using microwave technology. I was taking the lead in connecting all stages of the image processing pipeline, seamlessly integrating them into a user-friendly graphical user interface (GUI) to enhance functionality and user experience. A key aspect of my role was conducting in-depth research and development (R&D) in imaging, where I explored and implemented state-of-the-art techniques to drive innovation. I also took ownership of my workplan, independently organizing tasks and making strategic decisions to align with the project’s goals and priorities, ensuring optimal outcomes. My responsibilities extended to designing the system’s software architecture, where I focused on creating robust, scalable, and medically compliant solutions. This includes leveraging GPU acceleration to optimize performance and applying industry best practices to meet the rigorous standards of medical technology. Collaboration was central to my role, as I worked closely with experts from diverse disciplines to ensure a comprehensive approach to solving complex challenges. By combining technical expertise, strategic planning, and collaborative innovation, I contributed to a project with the potential to transform early detection and treatment of breast cancer, making a lasting impact on global healthcare.
Developed and optimized software and algorithms for the Neuroscience Department, advancing computational tools for memory- and compute-intensive neuroscientific research. Key contributions: - Designed and implemented high-performance Computer Vision algorithms for whisker-tracking in rodents, ensuring precise and efficient processing. - Accelerated Deep Learning applications on heterogeneous systems, leveraging GPUs and Graphcore IPUs for cutting-edge research. - Enhanced Functional Ultrasound imaging systems, focusing on real-time data acquisition, storage, and processing through CUDA and other optimized frameworks. These projects required expertise in heterogeneous computing architectures, memory management, and performance optimization. I employed advanced libraries and tools to deliver scalable, efficient solutions tailored to the demanding requirements of neuroscientific experiments.
Supervised labs, provided feedback and assessment for both the project and the exams of Embedded Systems M.Sc. course System Validation. The assignments and project were updated to present the students with new challenges.
Supervised labs, provided feedback and assessment for both the project and the exams of Embedded Systems M.Sc. course System Validation. The lab project involved designing an abstract model in mCRL2 which needs to abide by certain requirements. A technique, called model checking, was then implemented which can formally, with the verification of the translated requirements into mu-calculus properties, verify the absence of bugs in the system.