- I'm based in Stuttgart with a passion for software development, especially in cloud technologies and full-stack development.
- Currently deepening my knowledge of HTML, CSS, and JavaScript to enhance my frontend skills.
- I enjoy working with practical tools, solving challenging problems, and continuously optimizing my workflow.
- Frontend Development (HTML/CSS/JavaScript)
- Advanced C++ Projects & System Programming
- Data Structures
-
Java: Extensive experience gained through university projects and practical exercises, mastering core concepts (data structures, algorithms, OOP, concurrency) and software engineering principles (design patterns, layered architectures). Applied in significant projects including a mathematical/image processing library with a JavaFX UI, and a client-server application utilizing Spring Boot for the REST API and JavaFX for the client.
-
C++ & C: In-depth knowledge of modern C++ and C, focusing on system-level programming and performance. Expertise covers memory management (RAII, smart pointers), STL, templates, lambdas, and concurrency (pthreads,
std::thread, mutexes). Gained extensive practical experience in performance analysis and optimization (profiling withperf, Valgrind/Callgrind), utilizing AVX/SIMD intrinsics, cache-aware programming, compiler optimizations, Makefiles, and debugging with GDB (as per courses like "Basics of C++" and a performance programming practicum). Key projects include an external sort utility and various performance-optimized algorithms. -
Databases & SQL: basic understanding of relational database systems, including conceptual, logical, and physical database design, complex SQL query formulation (DML/DDL), relational algebra, transaction management, recovery, and security aspects. Practical experience gained through dedicated database coursework.
-
Linux & Bash: Proficient with Linux (Ubuntu) as a primary development environment for C/C++, Java, and other projects. Experienced with Bash scripting for task automation, build process management, system navigation, and package management.
-
Software Engineering Methodologies: Solid grasp of the software development lifecycle (SDLC), including requirements engineering, system modeling, various architectural patterns (Client-Server, Layered, Microservices), design patterns, diverse testing strategies (unit, integration, TDD), and CI/CD principles, based on comprehensive software engineering coursework.
