{ "title_website": "Marvin's Portfolio", "title_introduction": "Hello!", "content_introduction": "I am studying Media Informatics for my Bachelor's degree and have gained practical experience in various projects as part of my studies. I especially enjoy working on projects where I can explore and deepen new technologies, currently with a focus on machine learning.", "status": "Student B.Sc.", "profession": "Media Informatics", "workplace": "Ulm University", "github_desc": "View on GitHub ↗", "navbar_group_work": "Career", "navbar_group_projects": "Projects", "content_work": [ { "id": "siemens_mobility", "title": "Siemens Mobility", "company": "Siemens Mobility GmbH", "description": "Working Student Software Engineering in Simulation Environment (Hybrid)", "type": "Hybrid", "tasks": [ { "title": "Network Development & Integration", "content": "Design and implementation of a stable remote interface to connect external clients to a Unity simulation environment." }, { "title": "Server Infrastructure & Deployment", "content": "Setup, securing, and administration of a Debian 13 server as well as deployment of application instances." }, { "title": "Agile Teamwork & Quality Assurance", "content": "Active collaboration within the development team using feature-branching workflows (Git) and systematic code reviews." } ], "tech": [ "Unity", "WebRTC", "Linux", "GitLab", "C#", "FFmpeg" ], "start": "2026-05-15", "end": "present", "locale": "en-US", "from": "from", "to": "to", "at": "at" } ], "content_projects": [ { "id": "cnn_website", "title": "CNN Website", "description": "A website for showcasing various CNN projects such as bird classification and face detection.", "tags": [ "React", "PyTorch", "NGINX", "Caddy", "Docker Compose" ], "github": "https://github.com/MarvinKrausser/CNN_Website", "blocks": [ { "heading": "Frontend", "text": "The --link-- is online. The frontend is implemented with React and enables uploading images as well as displaying classification results. It is designed responsively and adapts to different screen sizes, making it easy to use on mobile phones as well.", "image": "cnn_website_1", "links": [ { "id": "website", "link": "https://marvinkrausser.com", "desc": "Website ↗" } ] }, { "heading": "Backend", "text": "The backend is implemented in a containerized setup using Docker and is managed via Docker Compose. The individual components are only accessible via the Docker network. Caddy acts as a central reverse proxy and automatically provides SSL certificates via Let's Encrypt. The React application runs behind an NGINX reverse proxy, while the API is implemented as a FastAPI server handling HTTP requests and WebSockets. The --link-- is accessible via a subdomain and is routed by Caddy to the FastAPI server.", "image": "cnn_website_2", "links": [ { "id": "subdomain", "link": "https://api.marvinkrausser.com/docs", "desc": "API ↗" } ] }, { "heading": "Bird Classification", "text": "The CNN classifies 7 bird species from images. It uses skip connections, dropout, and batch normalization to make training more stable and reduce overfitting.", "image": "cnn_website_3" }, { "heading": "Face Detection", "text": "The model is based on the YOLO architecture and is able to detect faces in real time, even on low-end hardware (e.g., a server with 1 GB RAM and 1 vCPU). The frontend continuously sends cropped webcam stream frames via WebSockets to the server.", "image": "cnn_website_4" } ] }, { "id": "selfhosting", "title": "Self-Hosting", "description": "Self-hosted services running in Docker containers on my own Debian 13 server.", "tags": [ "Linux", "Docker Compose", "Gitea", "SQLite" ], "github": "https://git.marvinkrausser.com", "blocks": [ { "heading": "Gitea", "text": "The --link-- serves as my private Git server for personal repositories. It runs as a Docker container that is only reachable through the Caddy reverse proxy, which provides HTTPS with Let's Encrypt certificates. Git access via SSH uses a separate port and works exclusively with SSH keys. All data, including repositories and the SQLite database, is stored in a single folder on the host, making backups as simple as archiving that folder.", "image": "selfhost_1", "links": [ { "id": "gitea", "link": "https://git.marvinkrausser.com", "desc": "Gitea instance ↗" } ] } ] }, { "id": "pixelcnn", "title": "PixelCNN Generator", "description": "Autoregressive deep learning model based on PixelCNN for generative image synthesis using PyTorch.", "tags": [ "Python", "PyTorch", "CUDA", "LaTeX" ], "github": "https://github.com/MarvinKrausser/pixelcnn", "blocks": [ { "heading": "Image generation with Deep Learning", "text": "The model uses Convolutional Neural Networks and deep learning to generate images. The MNIST digits dataset was used for training, and the model was trained on a GPU using CUDA. Additionally, the model can be specifically controlled with class inputs, as shown in the example with digits from 0 to 9. Due to limited resources, my model is restricted to low-complexity datasets.", "image": "pixelcnn_1" }, { "heading": "Seminar paper", "text": "A --link-- and --link-- were created alongside the Project.", "image": "pixelcnn_2", "links": [ { "id": "seminararbeit", "link": "pdfs/Seminararbeit.pdf", "desc": "Seminar paper ↗" }, { "id": "seminarvortrag", "link": "pdfs/Seminararbeit_Vortrag.pdf", "desc": "Presentation ↗" } ] } ] }, { "id": "boardgame", "title": "Online Multiplayer Game", "description": "An online multiplayer board game with server, game client, and AI players developed as a group project with five other students.", "tags": [ "C#", ".net", "Unity", "Docker", "JSON" ], "github": "https://github.com/MarvinKrausser/BoardgameServer", "blocks": [ { "heading": "Client", "text": "The game client was developed using Unity and C# and is based on a turn-based movement and card system. All designs were created independently. A --link-- and --link-- were also created.", "image": "boardgame_1", "links": [ { "id": "entwicklerhandbuch", "link": "pdfs/Team23_Entwicklerhandbuch_BoC.pdf", "desc": "Developer handbook ↗" }, { "id": "benutzerhandbuch", "link": "pdfs/Team23_Benutzerhandbuch_BoC.pdf", "desc": "User manual ↗" } ] }, { "heading": "Server", "text": "The server was implemented in C# using a layered architecture that ensures a clear separation between WebSocket connection management and game-related logic (e.g. player assignment and session management). Communication between server and client was standardized using a defined JSON schema to ensure compatibility and interchangeability of components developed by different teams.", "image": "boardgame_2" }, { "heading": "AI Players", "text": "In addition, several rule-based AI players were implemented that can be integrated into the system. Code quality was ensured through automated tests. Team collaboration followed agile methods (Scrum), and both server and AI were deployed using Docker containers.", "image": "boardgame_3" } ] }, { "id": "towerdefense", "title": "Tower Defense Game", "description": "Singleplayer tower defense game with editor developed as an individual project within a university course.", "tags": [ "C#", "Unity", "JSON" ], "github": "https://github.com/MarvinKrausser/TowerDefenseGame", "links": [ { "id": "github", "link": "https://github.com/MarvinKrausser/TowerDefenseGame", "desc": "View on GitHub ↗" } ], "blocks": [ { "heading": "Singleplayer Tower Defense Game", "text": "Simple tower defense game created entirely from scratch with custom designs. Uses the A* algorithm to calculate the pathfinding route. A demo build is available in the GitHub repository.", "image": "towerdefense_1" } ] }, { "id": "personal_website", "title": "Portfolio Website", "description": "This website showcases my projects in the form of a personal portfolio.", "tags": [ "HTML", "CSS", "Javascript", "JSON" ], "github": "https://github.com/MarvinKrausser/MarvinKrausser.github.io", "blocks": [ { "heading": "Technical details", "text": "The website was developed using HTML, CSS, and JavaScript without the use of external libraries. The content is stored in language-specific JSON files. The website is dynamically generated using JavaScript based on the respective JSON file. The Git repository follows a feature-branch workflow to ensure correctness of the website even during development.", "image": "personal_website_1" } ] } ] }