Software Development Engineer - Kinesis Data Analytics

3+ months agoSeattle, WA


Come change the way world processes streaming data

The Amazon Web Services (AWS) Kinesis Data Analytics (KDA) team is looking for Software Development Engineers to work on Apache Flink framework, who are interested in learning and building distributed stream processing engines. If you are enthusiastic about data streaming and excited about contributing to open source, this may be the role for you.

Real-time data processing from a stream needs substantial investments from customers in writing the application and maintaining the necessary infrastructure. KDA service provides customers with a fully managed stream processing platform leveraging Apache Flink framework. This enables customers to develop their applications using SQL or Java. With the service, customers need only provide the required application code containing the business logic to process the stream; the service takes care of providing building blocks/abstractions (such as processing windows, execution semantics, checkpoints) and infrastructure capabilities (such as elasticity, fail-over, etc.), eliminating complexity of stream processing.

As a member of KDA team you will be:
• working on making improvements to the stream processing engine, Apache Flink, to make KDA service the defacto service to run stream processing applications
• working on improving efficiency and availability of the engine, adding ease of use features and push the envelope of stream processing
• writing quality, reusable code for highly scalable and reliable cloud-based services
• being a champion for operational excellence by Insisting on the Highest Standards
• writing code that continuously improves service reliability and availability
• contributing to open source: upstream compatibility is a core tenet of KDA service and your changes to improve the engine will be contributed back to open source
To be successful in this role, you should have experience working on large-scale systems, enjoy solving complex software problems, and possess analytical, design and problem-solving skills. While not necessary, having experience with data processing technologies such as Apache Flink, Apache Spark, Apache Storm, Hadoop frameworks is a plus.

Come join us to make stream processing mainstream for our customers.

Work/Life Balance
Our team is family-oriented and values work-life balance. Most days, our entire team is co-located in the Seattle office, but we're also flexible when people occasionally need to work from home. We generally keep core in-office hours from 10am to 4pm. About half of us come in earlier and the other half of us stay later.

On-Call Responsibility
This position involves on-call responsibilities, typically for one week every two months. We don't like getting paged in the middle of the night or on the weekend, so we work to ensure that our systems are fault tolerant. When we do get paged, we work together to resolve the root cause so that don't get paged for the same issue again.

Inclusive Team Culture
Here at AWS, we embrace our differences. We are committed to furthering our culture of inclusion. We have ten employee-led affinity groups, reaching 40,000 employees in over 190 chapters globally. We have innovative benefit offerings, and we host annual and ongoing learning experiences, including our Conversations on Race and Ethnicity (CORE) and AmazeCon (gender diversity) conferences. Amazon's culture of inclusion is reinforced within our 14 Leadership Principles, which remind team members to seek diverse perspectives, learn and be curious, and earn trust.


• Programming experience with at least one modern language such as Java, C++, or C# including object-oriented design
• Bachelor's degree in Computer Science, Electrical Engineering, or similar; or equivalent experience
• Several years experience in system software development and delivery
• Advanced software engineering skills, including the ability to write expert-level, maintainable, and robust code in C++ (preferred), Java, C, or similar
• Strong Computer Science fundamentals in algorithms and data structures
• Working experience with high concurrency, multithreaded and distributed systems


• Experience working on distributed big-data processing engines such as Apache Flink, Apache Spark etc. is a big plus
• Experience building extremely high volume and highly scalable web services
• Experience with distributed systems, consistent hashing, distributed locking, replication, and load balancing
• Good communication skills and ability to work effectively on shared projects with other developers
• Ability to mentor junior engineers and influence technical roadmap

Amazon is committed to a diverse and inclusive workplace. Amazon is an equal opportunity employer and does not discriminate on the basis of race, national origin, gender, gender identity, sexual orientation, protected veteran status, disability, age, or other legally protected status. For individuals with disabilities who would like to request an accommodation, visit

Job ID: Amazon-1334258