Senior Software Engineer App Framework
Databricks is a data and AI platform that lets organizations build analytics, AI agents, and applications on a unified, governed lakehouse.
Funding history
Investors
About Databricks
Data engineers, analysts, and AI teams use Databricks to process large datasets, build reliable pipelines, and train models on a single governed platform. Users can run SQL analytics, serve ML predictions in real time, and deploy AI agents grounded in enterprise data. Its open lakehouse architecture provides consistent security and governance across analytical and operational workloads.
Skills
Candidate Availability
Required and preferred rules are kept separate and reflect the wording in the original posting.
About the Role
You will design, implement, and maintain low-level infrastructure and software components. You will optimize system performance, reliability, and scalability; work with JVM internals, memory management, concurrency, and distributed systems; collaborate on technical strategy; mentor engineers; and troubleshoot complex system issues.
Requirements
- Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field
- 7+ years of professional software-development experience
- Understanding of JVM internals, garbage collection, JIT compilation, class loading, and the memory model
- Proficiency in a JVM language and its runtime environment
- Programming skills in Scala, Java, Rust, or other systems-level languages
- Experience with operating-system concepts including processes, threads, concurrency, scheduling, and I/O
- Experience building and optimizing high-performance, scalable, reliable systems
- Experience with distributed systems
- Performance profiling and tuning skills
- Contributions to JVM or systems-software open-source projects
- Experience with RPC frameworks
Responsibilities
- Design, implement, and maintain core system infrastructure and low-level software components
- Optimize system performance, reliability, and scalability
- Work with JVM internals, memory management, concurrency, and distributed systems
- Collaborate on technical strategies and roadmaps
- Mentor junior engineers
- Participate in code reviews, design discussions, and architectural decisions
- Troubleshoot and resolve complex system issues
