Software Development Engineer – Job ID: 2256585 | ADCI – Haryana – IN, TS, Hyderabad

Amazon

  • Full Time

DESCRIPTION

Job summary
Payroll Technology at Amazon is all about enabling our business to perform at scale as efficiently as possible with no defects. As Amazon’s workforce grows, both in size and geography, Amazon’s payroll operations become increasingly complex, and our customers are asked to do more with less. Process can only get them so far, and that’s where we come in with technology solutions to integrate and automate systems, detect defects before payment, and provide insights. As an SDE on our team, you will be responsible for leading the architecture, design, development and launch of some of the core product features. You will have significant influence on our overall strategy by helping define these product features, drive the system architecture, and spearhead the best practices to delivery high quality products.

The ideal candidate is clearly passionate about new opportunities and has a demonstrated track record of success in delivering new features and products. A commitment to team work, hustle, and strong communication skills (to both business and technical partners) are absolute requirements. You will tackle large complex projects, massive data volume + complex business rules in a highly distributed and service-oriented architecture. create reliable, scalable, secure products for our customers in a hyper-growth environment where priorities shift fast.

This position requires that you are a significant and autonomous contributor. Your work is consistently high quality. You solve complex problems, applying appropriate technologies and best practices. Your focus is on designing, developing and effectively applying automated solutions that test major portions of software (e.g., significant component, set of features, mid-size application, service, etc.). You prevent and find defects early. You apply software testing techniques, such as equivalence class partitioning, boundary value testing, etc. You build complete test and/or measurement solutions (e.g., performance, load, scalability, usability, etc.) You use data from testing, deployment, and production to measure quality and provide actionable improvement to the product. You write code that an SDE unfamiliar with the system can understand. You are proficient in a broad range of design approaches and know when it is appropriate to make trade-offs. Your solutions are pragmatic. You do things with the proper level of complexity the first time (or at least minimize incidental complexity). You consider the legacy of the code you produce, limiting the use of short-term workarounds. You create flexible software without over-engineering. You re-use where possible, while being judicious about introducing dependencies. You are efficient with resource usage (e.g., designing to avoid impacting the system under test.)

BASIC QUALIFICATIONS

2+ years of non-internship professional software development experience
1+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems.
Programming experience with at least one software programming language.

Bachelor’s degree in computer science or a related field
At least 2+ years of work experience in a related field
Demonstrated proficiency with Java, C++, or similar modern programming languages
Solid expertise in data structures and algorithms
Ability to design scalable, reliable, maintainable solutions with very high availability.
Experience with relational and non-relational databases such as Oracle, SQL, Mongo DB, DynamoDB etc.
Obsession with quality, operational excellence, and customer experience
Strong problem solving and analytical abilities
Strong verbal and written communication skills and an ability to work in a team environment

PREFERRED QUALIFICATIONS

Experience building complex software systems that have been successfully delivered to customer
Experience with AWS technologies.
Domain expertise in Payroll.
Strong object-oriented design and coding skills
Experience with distributed (multi-tiered) systems, algorithms, and databases
Ability to effectively articulate technical challenges and solution.
Ability to think abstractly and deal well with ambiguous/undefined problems
Experience designing, building and deploying scalable, highly-available systems
Strong communication skills with diverse customers and audiences, across multiple disciplines and teams

Job Overview