|Recent Students: 26||Total Hours: 546||Last Online: 20 Apr 2021|
|All-time Students: 79||Total Classes: 434||Signed Up: 26 Jan 2017|
I currently work as a Senior Data Scientist for the government, working on challenging AI and machine learning projects, which I find very fascinating. Most of my recent work has been in the field of Natural language processing. I also mentor graduate colleagues, Ph.D students and post-doctoral research associates from various UK universities. Prior to my current role, I spent several years working as a high-performance algorithms developer in neuroscience. Mainly working with 3-dimensional brain images, I designed and implemented solutions for various problems like 3d affine and freeform image registration, 3d to 2d image registration, infusion detection, trajectory planning, and vital structure segmentation like blood vessels in the brain.
I think of myself as a very passionate computer scientist, with particular interests in algorithms and artificial intelligence and teaching university students allows me to transmit my years of expertise to them and also maintain my knowledge on the subjects at a state-of-the-art level.
When I am not working or teaching I play music or pursue outdoor activities. I also spend time with my daughters, playing with them or trying to get them familiar with swimming and music!
A more detailed description of my career background is available here:
I have been teaching university-level students for almost a decade now. In particular, the past few years I have been teaching students at the following levels:
- Undergraduates (BSc)
- Postgraduates (MSc and Ph.D.)
- Professionals (Interview preparation, work projects advice)
Most of my teaching has been in the following areas:
- Machine learning and AI
- Data Structures and Algorithms
- High-Performance Computing (Cuda, Opencl, Threads, MPI)
- Formal Languages / Context-Free Grammars
- Programming (Python, Java, C#, C/C++)
- Software Engineering (Usually a group Web - programming project, html/css/js/etc.)
Every tutoring job is unique in itself as different universities have different curriculums, requirements, and approaches and of course students can have different levels of difficulties with their studies. My past students have used my services in the following patterns:
- As a tutor for their whole studies, having lessons 2-3 hours weekly, depending on their needs from year one or two. This has proven particularly efficient as I would make sure there would be no knowledge gaps going forward and insist on building strong knowledge on subjects that would be necessary in their forthcoming modules.
- As an ad-hoc tutor to help with a particular module. Usually, that means that the student had knowledge gaps, perhaps cascaded throughout their studies. This is a more challenging approach and decisions on my teaching approach are made through an initial free consultation, where i assess the student's needs and knowledge gaps.
Computer science, data science, maths for machine learning, stats, HPC, algorithms, programming, python, c/c++
Great lesson. Took the extra time to explain a particular topic even though it ran over the required time slot.
Extremely helpful. Took the time to address my issues and gave me multiple solutions. Very friendly and considerate.
Very informative, I liked how we went through the slides and I could ask questions at any time.
So helpful !!
I now have an idea about how to get started on a project feature.
Great again -- really good at breaking down problems into bitesize chunks
Absolutely amazing, Thanasis explained everything really well and gave me a starting point for my assignment. Thank you so much!
Ph.D High Performance Computing
MSc Computer Science
BSc Imaging Sciences