Full Stack Software Engineer

TeslaGreeceOn-siteFull-timeMid level, 2–5 yearsListed 51 minutes ago

Apply now

About this role

Tesla's Motor Design team drives multi-physics optimization for the electric motors of all production vehicles. We combine electromagnetic, thermal, and mechanical models with production constraints in large multi-objective optimization problems. The goal is to maximize performance and efficiency while minimizing costs.

That work runs on software our team builds and operates: an in-house compute platform that turns engineers' simulation and optimization studies into thousands of jobs on a shared cluster, along with the tools they use to track, explore and compare the results. As a Full-Stack Software Engineer, you will help build, run and own this platform from end to end. That covers the control-plane services that schedule and manage work, the infrastructure underneath, and the applications, client libraries and developer tools that motor designers use every day.

You will write code across the whole stack, shape its architecture, run what you ship in production, and work side by side with the engineers who depend on it. You'll own problems end-to-end understanding the real need and choosing the technical path.

- Develop and own the platform's control-plane services and APIs: job lifecycle, scheduling, state tracking, resource limits and access control, kept consistent with the compute cluster and resilient to failures.
- Build full-stack features for web and desktop (live job monitoring, results exploration, comparing design trade-offs, workflow and admin tooling), plus client libraries, command-line tools and release pipelines to make the platform easy to use from MATLAB and Python.
- Manage cluster infrastructure as code (scheduling, containers, storage, authentication, monitoring, simulation software environments), and keep the platform reliable, fast and secure through metrics, on-call and root-cause analysis.
- Build AI agentic workflows that let motor designers submit studies, query results and diagnose failures without writing code, and use AI coding agents to move faster while owning every decision.
- Partner with motor designers, optimization engineers, IT and infrastructure teams to turn engineering needs into well-designed, integrated tools.

- Degree in Computer Science, Electrical Engineering, or a related field (or equivalent experience), and professional software development experience.
- Strong programming skills in Python, with backend experience (API design, relational databases and migrations, testing, OAuth2/OIDC), and experience with TypeScript and React or a similar modern frontend framework.
- Understanding of distributed-systems concepts (state synchronization, concurrency, race conditions), Linux fundamentals, and familiarity with containers and infrastructure as code.
- Hands-on experience with AI coding agents (e.g., Claude, Cursor, or similar) in real projects, and the judgment to critically review and own every change they make.
- Fluency in English and clear written and verbal communication: design docs, decisions and pull requests that others can act on.

The following will be considered as plus:

- Experience with HPC or high-throughput computing (e.g., SLURM, MPI, job schedulers).
- Proficiency in Rust, or experience shipping desktop applications, command-line tools, package managers or build systems (cross-platform packaging, signing, auto-update, dependency resolution).
- Background in scientific computing, numerical optimization, engineering simulation (e.g., finite element analysis) or electric motor design.
- Experience building LLM-based tools or agents (e.g., tool calling, agent frameworks, MCP)
- Observability experience: metrics, dashboards, alerting.