I am Dimitris Dranidis, a Principal Software Engineer, Quality Architect, and a Computer Science Educator.

Passionate about quality, I focus on clean architecture, test-driven development, model-based and contract testing, and continuous improvement. I have extensive experience refactoring complex systems, integrating quality monitoring platforms, and building tools that enhance reliability, maintainability, and developer productivity. As a mentor and collaborator, I cultivate a cross-team quality culture, support professional growth, and contribute to both open-source software and academic research, consistently delivering maintainable, high-quality solutions across enterprise and educational environments.

I’m also a programming language polyglot, comfortable across functional, logic, object-oriented, procedural, and concurrent paradigms. My experience spans Java, C, C++, C#, Go, Scala, Clojure, ClojureScript, JavaScript, TypeScript, Python, PHP, Ruby, Prolog, SML, and CML, allowing me to choose the right tool for each problem and guide teams in adopting the most suitable technology stacks and programming styles.

Professional Experience

  • Quality Assurance Lead - BetAdvanced
  • Principal Software Engineer - Freelance Consultant
  • Associate Professor (served as Head of Department, Academic Director of Postgraduate Studies) at the Computer Science department at CITY College, CITY College, University of York Europe Campus

Education

  • PhD in Computer Science, Ludwig-Maximilian’s-University, Munich, Germany
  • Postgraduate Certificate in Learning and Teaching, The University of Sheffield

Skills

  • Automated Testing
  • Model-based Testing
  • Agile methods
  • Object-oriented Analysis and Design
  • Formal methods
  • Software Engineering
  • Project Management
  • Learning and Teaching Technologies

Projects

  • JSXM - A model based testing tool for the automated generation of test cases
  • StudentUML - An educational UML drawing tool with consistency checking

Hobbies

  • Board game designer: Grand Bazaar
  • Guitar player in a local Jazz band: “Breezz”

Languages

I love learning new languages. A language is a reflection of the country’s culture.

  • Native: Greek
  • Fluent: English, German
  • Independent user: Turkish
  • Basic user: Japanese, Spanish, Italian

Social Media

Static Badge Static Badge Static Badge