Offene Stellen
We are looking for student with full-stack development experience to help implement a new master project for the course Advanced Topics of Software Engineering, and help to maintain it.
The project will be used as the central practical assignment of the course. Students will work through six exercises based on a realistic travel-booking scenario involving flight booking, hotel booking, and concurrent reservation requests. The main technical challenge is to ensure that the system prevents double-booking, for example, two users booking the same plane seat or hotel room at the same time.
The system will consist of approximately five microservices, based on a provided architecture, API requirements, and test cases. The implementation should demonstrate realistic software engineering concerns such as API-first development, service communication, database consistency, transaction handling, automated testing, and front-end integration.
You will contribute to the end-to-end implementation of the project, including:
- Designing and implementing REST APIs using an API-first approach
- Creating OpenAPI/Swagger specifications
- Implementing Spring Boot microservices
- Implementing JDBC-based database access
- Building a JavaScript-based front end
- Writing unit, integration, and concurrency tests
Required Skills
- Strong Java experience, preferably Java 21+, and Spring Boot framework
- Experience with JDBC and relational databases, for example PostgreSQL
- Familiarity with OpenAPI/Swagger
- Experience with JavaScript-based front-end development, for example React or Angular
- Familiarity with JUnit and test-driven development
What You Gain
- A strong practical project for your CV
- Experience implementing a realistic distributed software system
- Direct involvement in the development of a Master’s-level software engineering course
- Opportunity to influence the structure and technical design of the project
- Optional exposure to blockchain and LLM-based service integration
This position is suitable for a technically strong student who wants to apply software engineering knowledge in a project that will be used by others. You should be comfortable working independently, discussing design decisions, and producing code that other students will later read, run, and extend.
The position is mostly remote, with optional on-site update meetings. After the implementation phase, the position will also involve supporting teaching-related tasks during the semester in connection with the ASE course.
The position is to be filled as soon as possible. The duration is six months, from 9 to 20 hours per week (other options could be discussed). Salary rates per hour. For SS26, with BA/MA its 15,41 €, without 15,20 €. For WS26, with BA/MA its 16,70 €, without 15,20 €. The working language is English.
Please send your expression of interest to elisa.zuieva@tum.de. Include a brief description of your experience and interest in the topic, as well as your CV and transcript of records.