Senior Software Engineer Data Processing Performance
Skills
JavaC++CompilersData StructuresHigh Performance ComputingLLVMQuery Optimization
What the job involves
The main requirements, responsibilities and hiring steps.
Requirements
- 5+ years of experience in performance engineering and managing large codebases.
- Strong experience with statically-typed compiled languages (C++ Java Scala).
- Proficiency in Java interfacing with C++ for performance-sensitive projects.
- Solid understanding of low-level libraries CPU performance and memory management.
- Expertise in CPU hardware profiling tools and a firm grasp of CS fundamentals like algorithms and data structures.
- Independent worker with critical thinking skills.
Nice to have
- Startup experience
- Open-source development
- LLVM familiarity
- Data processing internals expertise
Day to day
- Collaborate with the founding team to expand the integration of our custom compiler.
- Maximize data processing throughput of leading Big Data analytics software.
- Implement extensible optimizations for data processing algorithms in Java and C++.
- Develop and test production-ready code for high-impact data processing infrastructure.
