Job summary
The BDT/eCF team is looking for a passionate and innovative engineer with a solid technical background to join the engineering team. Our technology stack connects millions of businesses of all sizes to hundreds of millions of Customers within the  marketplaces worldwide. Our platform, at Amazon-scale, enables customers to process native SQL, machine learning, and other functional transformations using Apache Spark, Scala, Java, Python - with plans to use Apache Beam runners, Flink, Ray and related technologies to build unified compute for batch, streaming and ML processing - executing over schema'd data stored in S3, and to seamlessly write those curated datasets out to front end caches like Dynamo, Redis and ElasticSearch. Additionally, we enable these same sets of functional transforms over streaming data, enabling customers to transition seamlessly between Streaming, Batch, Cache and Analytics as needed to meet customer demand. The successful candidate will have a background in the development of distributed systems, a solid technical ability, good communication skills, and a motivation to achieve results in a fast paced environment.
A day in the life
This includes attending a daily standup, managing/contributing on your goals, projects, deliverables, innovations, operational excellence, taking turns every 8-10 weeks with operations, helping improving customer experience.
Job responsibilities
If you are looking for building big data scalable engines with cutting edge technology and ML stack (with Spark, Java, Scala, Notebooks, Python, Flink, Beam, AWS - EMR, EKS, Kinesis, Dynamo, SQS) processing & transforming data across data lakes at petabytes scale at Amazon, then look no further. If you are looking to work with team of engineers that relentlessly innovate and push the envelope keeping customers at the center of its universe, continually insisting + raising the bar on their higher standards and delivering results with velocity, then this is the space and place to be in.
The SDE is responsible for ensuring the team's software maintains a high bar with respect to quality, security, architecture, and operational excellence. They take the lead on the design and delivery of major features and takes the lead on re-architecting significant technology components, while engaging with and influencing their team, external teams, partners, and leadership along the way. They are able to identify the root cause of widespread/pervasive issues including areas where it limits innovation and prevents accelerated delivery of projects, while navigating several systems and components they may or may not own. They are able to effectively communicate with their team and others, take calculated risks, anticipate and mitigate long-term risk, and make reasonable tradeoffs when situation demands it. mentoring less experienced engineers and providing career development opportunities, while providing constructive feedback to their peers. They understand the business impact of decisions and are able to exhibit good judgment while making trade-offs between the team's short-term technology or operational needs and long-term business needs. Ultimately, they display strong technical acumen and ownership while providing strong leadership for the rest of the team.
1+ years of experience contributing to the system design or architecture (architecture, design patterns, reliability and scaling) of new and current systems.
2+ years of non-internship professional software development experience
Programming experience with at least one software programming language.
At least 3+ years of software development experience
Strong OO analysis, design, and development skills in Java
Strong verbal and written communication skills
Works well in a fast-moving team environment and is able to produce solutions having complex dependencies and requirements
B.S. in Computer Science, related field, or equivalent work experience
Experience with Spark, Hadoop, REST, Gremlin, Tinkerpop, Kafka, Flink, Beam
Experience with AWS tech such as Rredshift, EMR, Dynamo, Kinesis, EKS
Experience working with large commercial relational database systems (Oracle, SQL Server).
Experience developing Unit Tests using tools such as JUnit, NUnit, MSTest to verify your code quality.
Experience in the building complex software systems that have been successfully delivered to customers.
Knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
Strong written and verbal communication skills preferred.
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, please visit https://www.amazon.jobs/en/disability/us.