Portfolio

Greek

I'm Theo Dimakop

Undergraduate programmer. I'm best at Linux, prototyping and user testing.

I'm looking for internship during the Summer or a bit later to get my degree. My Greek full name is Theodoros Dimakopoulos.

CV PDF
face of man, green eyes, long hair

Bits of experience

  • I entered the University of Athens in 2019. We write C, C++ and Python code and one focus is to explore the internals of databases, parallel processing and old-school artificial intelligence.
  • Apart from the University, I scrap together little programs as a hobby. I still use some of them. Some have been through a number of phases where they became complicated and simple again.
  • In 2024 I interned at a chat bot and AI company called Helvia. The first out of three months I tried connecting two repositories with Docker files and then I made a web app to learn backend.

Key streaming app

To learn backend web development in my internship, I prototyped an app using the tools I had to learn. It was inspired by these moments when someone sends a long message and you wish you could interrupt them. It uses ReactJS, NextJS, plain CSS and Python's FastAPI. The protocol and some UI quirks had to be improvised.


          
        
Messaging app with an input bar saying stream typing, a menu has two chat rooms, a theme button and links saying author and GitHub. Messaging app that outlines deleted text and has a button saying clear. The input box has the same text as two messages above it.

This portfolio

    • Visit the first iteration
    • Code on GitHub

    In 2023 I used short PHP functions that print HTML, inspired by Clean Code.

    • Second iteration
    • GitHub

    Then, I tried to use PHP the intended way. The challenge was to keep the Greek version consistent.

    • Third iteration
    • GitHub

    The third time, I fit all the code in one HTML file and there was a script that produced the Greek file.

    • GitHub

    In the end, I managed without a script using JavaScript. That was inspired by a talk by DHH about build steps.

Four screenshots of sites with Theodore's face, the second and third have a mountains backdrop.

Values

  1. Demonstrations

    Demonstrations, prototypes and user tests reveal problems early.

  2. Communication

    I find that understanding people makes work easier and more fun.

  3. Simple needs

    Simple code can be laborous and risky, but I tend to prefer it.

I tend to prefer teams where it's easy to try out a piece of code to some degree, perhaps using automated tests without integration or by having a build system that allows one to try a part of the system. I prefer working in person usually, depending on the distance from home and the team. It's easier to tell when it's the right time to strike a short conversation, in person.