Hey, I'm Kaarle

... and welcome to my stunning portfolio page/journey!

For an immersive experience press play
Note: Animations are disabled for mobile devices.

Why this webpage?

The goal of this page is to showcase my skills and knowledge in software development, aiming to persuade you of the value I bring to the table.

Feel free to explore the content through the buttons below or simply scroll down to enjoy the engaging visuals. Personally, I recommend the latter for the delightful visual experience.

Also be sure to check out my github and linkedin.

About me

So who am I? I'm a 22-year-old IT student hailing from Finland, currently on my second year of Information Technology studies at the University of Turku. Basically I'm a third year student. Having wrapped up my Bachelor's thesis, I'm expecting to get my Bachelor's degree in the summer of 2024.

My fascination with computers and technology dates back to my childhood, and I've nurtured programming as a hobby for several years. Both in my free time and throughout my academic journey, I've had the opportunity to delve into a diverse array of technologies and concepts. I have worked with languages such as JavaScript, TypeScript, Python, Java, C, and C++, my expertise predominantly lies within the JavaScript ecosystem, where I've honed my skills with TypeScript, NodeJs, ReactJs, and NextJs. Recently I have also expanded my knowledge in the Java world with Spring Boot. And I am aiming to expand my knowledge further.

Most of my knowledge stems from my university studies and personal projects during my free time. My university studies have provided me with a robust foundation in IT and software development. In addition to my formal education, I successfully completed the Fullstack Open program, where I gained extensive insights into full-stack development and application development in general.

Projects

I've successfully undertaken a couple of independent learning projects and am actively engaged in a few more. In addition to these larger endeavors, I've tackled several mini and learning projects as integral components of my university studies, broadening my skill set along the way. Most of my projects are crafted within the NodeJs environment, reflecting my proficiency in this ecosystem.

Looking ahead, I'm eager to diversify my portfolio. I'm interested in trying out frameworks such as the NET framework, Django and Laravel. Also I want to try something other than web development.

You can find my bigger projects by scrolling down. And also be sure to check out my github here where I have included also my smaller school projects.

Hops App

Hops App is a web application that helps users to plan their university studies. The core functionality is a special calendar consisting of 4 periods and 2 additional periods for summer studies. The user can add courses to the calendar and the application will automatically calculate the credits and the workload of that period. Courses can also span multiple periods.

The application frontend is built with React, Material UI, and TypeScript. Backend is built with TypeScript, NodeJs, ExpressJs, Apollo GraphQL, and MongoDB. I also used jest and cypress for unit and E2E tests. The app is deployed on fly.io here.

This was the first fullstack project I've done and it was a great learning experience. It was done as part of the Fullstack Open 2022 studies. I enjoyed building a independent project for the first time without too specific instructions. I liked the challenges and solving them. For example the extensive use of custom hooks, redux reducers and ApolloGQL mutations were a great learning experience. The greatest challenge was all the new CSS properties I got to work with and flex in particular. But it taught me so much. I've improved a lot since then and I'm planning to refactor the project in the future.

Github URL: frontend backend

SimplyFood

SimplyFood is a recipe website that allows users to create, like, search and comment on recipes. This was my second fullstack project and it was done as an independent learning project.

The application is developed with NextJs, which means that the frontend and the backend are built with one framework. In addition to NextJs, I use TailwindCSS for styling, NextAuth for authentication, prismadb as an orm and playwright for e2e tests. I have a simple CI/CD pipeline with Github Actions and Vercel's own checks to preview and deploy the app. I have different neon.tech Postgres databases for production and development and testing. I also use AWS S3 for storing images. The app is deployed here.

This project presented numerous challenges, each of which provided me with valuable learning opportunities. I acquired new testing techniques and gained experience in utilizing various cloud resources. It was during this project that I first encountered Server Side Rendering (SSR) and Search Engine Optimization (SEO). Furthermore, the migration of the app to utilize the NextJs 13 app router and other features significantly broadened my knowledge and skills in NextJs.

Github URL: here

ToDo-App

ToDo-App is a simple web application that allows users to create, edit and delete their todos. The frontend was built with React and the backend was built with Spring Boot. The app is deployed here

The projects goal was to get to know the Spring Boot framework. It was a great learning experience and I got to know the framework quite well. It was a challenge since lots of my experience comes from the NodeJS ecosystem, but also it was a pleasure also because Spring Boot does a lot of things for the developer. Definitely a great experience.

Github URL: here

Skills

In the dynamic realm of IT, I recognize that programming languages represent just a fraction of the skillset. What truly matters is a robust grasp of fundamentals and the ability to swiftly adapt to new challenges. I harbor a genuine enthusiasm for continuous learning and possess the courage to venture into uncharted territories.

Here are some of the technologies and concepts I've worked with during my studies and freetime: JavaScript, TypeScript, NodeJs, ReactJs, NextJs, Python, Java, Spring Boot, Quarkus, C, HTML, CSS, SQL, MongoDB, PostgreSQL, SQLite, Apollo GraphQL, Prisma, Git, Docker, AWS, CI/CD, Jest, Cypress, OOP, Agile, Scrum, Computer Architecture, Sockets and more.

Previous experiences

In case you're wondering, what I have been up to besides my freetime.

Here is a list of my previous experiences:

Contact info

If youre thinking that's a good guy and he's exactly what we need. Feel free to contact me on these channels.

And also certificates from the Fullstack Open studies:

Attributions

Music: Oceandrive by Ultrawave - https://www.youtube.com/watch?v=i7jU0xDABGM

This website includes 3D models licensed under Creative Commons.

Death Star: This work is based on "Death Star - Star Wars" (https://sketchfab.com/3d-models/death-star-star-wars-3d5f01485e9e4e8b9d995d7764341afe) by SebastianSosnowski (https://sketchfab.com/SebastianSosnowski) licensed under CC-BY-NC-ND-4.0 (http://creativecommons.org/licenses/by-nc-nd/4.0/)
Lost Programmer: This work is based on "Lost Programmer" (https://sketchfab.com/3d-models/lost-programmer-43d32e4f459f4857a054579da61bb3d6) by rivaiamin (https://sketchfab.com/rivaiamin) licensed under CC-BY-ND-4.0 (http://creativecommons.org/licenses/by-nd/4.0/)
Earth: This work is based on "Earth" (https://sketchfab.com/3d-models/earth-5c83056b54cc41be84c554fb6404c7fd) by Anthony Yanez (https://sketchfab.com/paulyanez) licensed under CC-BY-4.0 (http://creativecommons.org/licenses/by/4.0/)
Toolbox: This work is based on "Toolbox" (https://sketchfab.com/3d-models/toolbox-6474b4dfd29947689329141298ed5981) by Requital (https://sketchfab.com/requital_0111) licensed under CC-BY-4.0 (http://creativecommons.org/licenses/by/4.0/)