Looking for a backend / software engineering internship

Stefan Florin Cioaba

Computer Science Student · Backend & Software Engineering

I'm a CS student in Timișoara who mostly works on backend and systems things. I like understanding how the layer below the one I'm using actually works, which is how I ended up writing an HTTP server and a shell from scratch. Currently looking for a backend / swe internship where I can work on real systems.

Selected Projects

PartyPopped

live

Full-stack event discovery platform

A React 19/Vite frontend and a Spring Boot REST API with 7 controllers and 35+ endpoints, backed by Supabase/PostgreSQL, deployed on Vercel and Render. Auth is stateless: Supabase issues the JWTs and a custom Spring Security filter chain validates them against a shared HMAC secret, so identity logic lives in one place. The backend is laid out in the same controller/service/repository structure across 8 domain modules, with JPA entities and hand-written DTO mappers. On top of that there's a social layer - follows, paginated feeds, bookmarks, attendance tracking - and image uploads proxied through a custom HTTP client to Supabase Storage. Monitoring and centralized logging run through Grafana Cloud and Spring Actuator.

  • Java
  • Spring Boot
  • React
  • PostgreSQL
  • Supabase
  • Grafana

HTTP Server in C++

from scratch

Single-threaded epoll server, 14k req/s

I wrote an HTTP/1.1 server from scratch in C++ to see the C10K problem happen for real. The naive thread-per-connection version hit a hard wall at 5,889 concurrent connections under wrk, mostly thread stack overhead. I rebuilt it around a single-threaded epoll event loop with non-blocking sockets, tracking each connection's state (reading headers, reading body, writing) explicitly. That version sustained 14k req/s with zero socket errors from 100 all the way up to 15,000 concurrent connections.

  • C++
  • Sockets

Unix-like Shell in Java

from scratch

Command parsing and process management

A Unix-style shell in Java. Built-ins and external programs both implement the same interface, so the main loop just parses a line, looks up a command, and runs it. Handles quoting, escaping, and output redirection (> and 1>). Built-ins are cd, pwd, echo, type, exit, and a cat that resolves its own file paths. Anything else gets looked up on PATH and run through ProcessBuilder. Absolute and relative paths get normalized, and the shell tracks its own working directory.

  • Java
  • OOP

Certifications

CPA: Programming Essentials in C++

Cisco Networking Academy

Networking Basics

Cisco Networking Academy

April 2026 View credential ↗

AI Fluency for Students

Anthropic

Skills

Languages

  • Java
  • C/C++
  • JavaScript
  • Python
  • HTML
  • CSS
  • Bash

Frameworks

  • Spring Boot
  • React

Tools

  • Git
  • GitHub
  • Docker

Spoken

  • Romanian (native)
  • English (C1)