Senior Software Engineer II - Flink Table API
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+26 more
Job description
As a Senior Software Developer II on the Flink Table API team, you will own how developers build streaming applications in Confluent Cloud with Apache Flinkβs Table API, DataFrame API, and user-defined functions (UDFs). Youβll work on end-user API design in Python and Java, performance across the language boundary, running untrusted user code safely in a fully managed serverless environment, and developer productivity for streaming workloads. This is a hands-on senior role for someone who can take complex work from design through rollout on their own, such as shipping a new UDF capability or tuning a cross-language hot path. Youβll work closely with engineers, product managers, and partner teams to turn customer needs into reliable, performant, and easy-to-use systems, and youβll deepen your expertise in distributed systems and stream processing along the way. This role requires strong systems fundamentals. Youβll tune performance across the Python/Java boundary and work with the cloud-native infrastructure underneath: Kubernetes, resource isolation, and sandboxing untrusted code in a multi-tenant environment. If you enjoy working across layers, youβll thrive here. If your strength is application-level development on top of frameworks, or working in one language without digging into systems internals, this role is probably not the right fit. What you will do:
- Design and build the Python and Java Table API, DataFrame API, and UDF experience, from client libraries through engine internals to control plane orchestration.
- Improve performance across the Python/Java boundary by profiling and tuning serialization, data transfer, and UDF execution for batch and streaming workloads.
- Run untrusted user-defined code safely in a fully managed, multi-tenant serverless environment, with strong isolation, resource limits, and predictable behavior.
- Own projects end to end: design, implementation, testing, documentation, rollout, and long-term maintenance.
- Make production systems more reliable through better observability, automation, tooling, and incident follow-up, and pay down technical debt along the way.
- Write clear design docs and drive technical decisions with product and partner engineering teams, turning customer needs into practical solutions.
- Contribute to open-source Apache Flink and collaborate with the broader community on overlapping work.
- Raise the teamβs bar through code reviews, design feedback, knowledge sharing, and mentoring. Required technical and professional expertise
Requirements
- 5+ years of industry experience building backend services, data infrastructure, or distributed systems.
- Strong computer science fundamentals, including data structures, algorithms, and a solid understanding of concurrency and distributed systems basics.
-
Strong proficiency in both Java (or another JVM language such as Scala) and Python, with the ability to contribute to a large, existing codebase SQL and data processing:
- A solid understanding of SQL and relational concepts, and genuine interest in how query engines work (parsing, planning, optimization, execution).
-
Familiarity with data processing systems such as databases, query engines, or stream processors ? through work experience, open source, or advanced coursework/projects. Cloud and operations:
- Experience running or operating services on at least one major public cloud (AWS, GCP, or Azure); exposure to Kubernetes-based environments is a plus.
-
Track-record to own your code in production, including metrics, dashboards, alerts, and on-call participation. Ways of working:
- Ability to deliver well-scoped features end-to-end with high quality: clarify requirements, implement, test, and roll out safely, seeking input from senior engineers where needed.
- Clear, pragmatic communication and constructive participation in design discussions and code reviews.
-
High bar for code quality and testing, and a willingness to iterate based on feedback. Preferred technical and professional experience
- Performance tuning in Python and Java, especially across the language boundary (serialization, data transfer, profiling).
- Experience with Apache Flink SQL or the Table API, or with another SQL engine or large-scale data processing system (for example, Spark SQL, Trino, or a database engine).
- Understanding of streaming semantics such as event time, watermarks, and CDC handling.
- Open-source contributions in streaming, databases, or distributed systems, ideally including Flink or related components. IBM is committed to creating a diverse environment and is proud to be an equal-opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, gender, gender identity or expression, sexual orientation, national origin, caste, genetics, pregnancy, disability, neurodivergence, age, veteran status, or other characteristics. IBM is also committed to compliance with all fair employment practices regarding citizenship and immigration status.
About the company
At IBM Software, we transform client challenges into solutions. Building the worldβs leading AI-powered, cloud-native products that shape the future of business and society. Our legacy of innovation creates endless opportunities for IBMers to learn, grow, and make an impact on a global scale. Working in Software means joining a team fueled by curiosity and collaboration. Youβll work with diverse technologies, partners, and industries to design, develop, and deliver solutions that power digital transformation. With a culture that values innovation, growth, and continuous learning, IBM Software places you at the heart of IBMβs product and technology landscape. Here, youβl have the tools and opportunities to advance your career while creating software that changes the world. Your role and responsibilities
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Loading talks and stories from around this roleβ¦