Home

Hi and welcome to the main point of entry of my digital self.

My name is Kyriakos Chatzidimitriou and I strive to be a Software Architect, an (applied) Machine Learning Researcher and an Entrepreneur. Currently, I am working on my first company Cyclopt and I am also a research associate at the Aristotle University of Thessaloniki, working as a technical manager, software architect and researcher in R&D projects at ISSEL and conducting research in the remaining time in the areas below.

My research, development and business interests are in the broad area of Machine Learning and Big Data for and with Software Engineering and Software Development. More specifically:

  • Big CodeSoftware Analytics (Descriptive, Diagnostic, Predictive, Prescriptive, etc.) and Mining Software Repositories and software related data streams for patterns to improve the various stages of the software lifecycle.
  • Applying machine learning on the source code and building useful knowledge representations of software related artefacts.
  • Devising tools and models for assessing the quality of software (and intelligent - Software 2.0) systems with respect to the ISO 25010 standard.
  • Engineering intelligent software systems (software agents) for automating (and improving) various tasks humans do, with focus on lifelong machine learning techniques and their quality.
  • Software tools for machine learning automation (AutoML), for garbage-in, gorgeous-outoutcomes and autonomic systems.
  • Big Data/Machine Learning with Software Engineering: Architectures, formalisms,  patterns, paradigms, algorithms, infrastructure as code and heuristics that can efficiently express big data operations and in particular enable the scalability of machine learning algorithms.

As I developer (and for the time being), I am fond of the MERN stack for building web applications, JavaScript and node.js but I also work with Java, Python and R in the projects. My site is structured as follows:

  • About
    • Me - Information about me, including my CV and my social media profiles.
    • Timeline - My personal timeline.
  • Blog - My blog on personal, research and development activities, tutorials and 'how tos', personal opinions, book reviews, exercise and nutrition posts etc.
  • Research - My portfolio of research projects that includes areas of research and funded projects I worked or I am working on.
  • Development - My portfolio development projects that includes open source software, libraries and tools I am involved in, as well as any running applications web or mobile.
  • Publications - My publish or perish profile and my publications list.
  • Resources - Pages that provide links to the best things (articles, videos, books, podcasts etc.) I found on the web on specific subjects along with my narration and links to my posts. I got this idea from Martin Fowler's Resource Guides, as for example that on Microservices.