Back to Projects

Full Stack Developer

Mar 2021 - Jan 2022, Sep 2023 - Jan 2024, Apr 2024 - Jan 2025, Mar 2025 - Present
2 years 8 months

About This Project

I participated in the development of the open-source interactive learning management system Artemis as part of my studies at TU Munich. Artemis is used by at least 9 universities, including TUM. Besides it's active usage in academia, the project is aimed to allow students to get in touch with actual real world problems in a bigger scope than normal coding exercises would allow. During my studies I contributed to Artemis in various ways, including a seminar, practical course, my Bachelor Thesis, and my Master Thesis. I have gained hands-on experience with full stack development & UI/UX design, working with technologies such as Java, Spring Boot, TypeScript, and Angular. The project emphasizes best practices in software engineering, including clear and concise PR descriptions, updating the documentation, testing, continuous integration, code reviews and pair programming. The setting is similar to a professional project environment, as multiple students are working in teams on different modules of Artemis. As the project is open-source, all my contributions are publicly available on GitHub.

Key Highlights

  • Integrated passkey authentication (WebAuthn) via Spring Security
  • Introduced new user roles for enhanced access control
  • Joined UI/UX cross project team
  • Improved exam review UI/UX
  • Improved student exercise view and added filter options
  • Ensured instructor view consistency for exercises and introduced 'simple mode' for basic configurations

Technologies & Frameworks Used

Java
JUnit
Spring Boot
TypeScript
Angular
Jest
Liquibase
MySQL
PostgreSQL
Spring Security
Playwright
GitHub Actions
Docker
Weaviate

Skills Gained

Full Stack DevelopmentRESTful API designAuthentication & authorization (WebAuthn, Spring Security)Database migrationsUI/UX designCode reviewUser documentationTechnical documentationPair programmingTesting (unit, integration, E2E)Open-source collaborationCI/CD pipelinesWorking in large-scale codebasesFrontend DevelopmentBackend Development