Currently pursuing or recently completed a Bachelor's, Master's, or PhD in Computer Science, Mathematics, Software Engineering, Physics, or a similar field, or equivalent practical experience
Proficiency in at least one language such as Java, Rust, Scala, C++, or C
Strong foundations in algorithms, data structures, and concurrency
Strong written and verbal communication skills
Coursework or projects in databases, compilers, operating systems, or distributed systems
Contributions to open-source projects
Nice to Haves
Curiosity about how data systems work, from query optimizers and execution operators to file formats and distributed processing
A high bar for correctness and a willingness to dig until you understand why something behaves the way it does
Comfort following a problem across languages, services, and layers of the stack
A practical approach to performance, grounded in measurement rather than intuition
Eagerness to learn, ask questions, and incorporate feedback
Interest in applying deep systems engineering to real-world problems, with empathy for the people who depend on the software
What You'll Be Doing
Working on software engineering teams applying open-source data technologies to critical problems
Building data processing infrastructure that supports applications in healthcare and supply chain management
Working on systems related to computation representation, query plan optimization, operator execution, and efficient data reading/writing
Building on and extending Apache Spark, Apache DataFusion, and Apache Iceberg to meet customer needs
Engaging in design, code review, testing, and release of new features and optimizations
Improving performance, correctness, and compatibility in production systems
Learning how modern data systems work internally and applying that knowledge to impactful problems