Software Development Engineer – SDE 2.
As a Software Development Engineer at Amazon, you have industry-leading technical abilities and demonstrate breadth and depth of knowledge. You build software to deliver business impact, making smart technology choices. You work in a team and drive things forward.
Top Skills
You write high quality, maintainable, and robust code, often in Java or C++ or C#
You recognize and adopt best practices in software engineering: design, testing, version control, documentation, build, deployment, and operations.
You have experience building scalable software systems that are high-performance, highly-available, highly transactional, low latency and massively distributed.
Roles & Responsibilities
You solve problems at their root, stepping back to understand the broader context.
You develop pragmatic solutions and build flexible systems that balance engineering complexity and timely delivery, creating business impact.
You understand a broad range of data structures and algorithms and apply them to deliver high-performing applications.
You recognize and use design patterns to solve business problems.
You understand how operating systems work, perform and scale.
You continually align your work with Amazon’s business objectives and seek to deliver business value.
You collaborate to ensure that decisions are based on the merit of the proposal, not the proposer.
You proactively support knowledge-sharing and build good working relationships within the team and with others in Amazon.
You communicate clearly with your team and with other groups and listen effectively.
Skills & Experience
Bachelors or Masters in Computer Science or relevant technical field.
Experience in software development and full product life-cycle.
Excellent programming skills in any object-oriented programming languages - preferably Java, C/C++/C#, Perl, Python, or Ruby.
Strong knowledge of data structures, algorithms, and designing for performance, scalability, and availability.
Proficiency in SQL and data modeling.
About Amazon India
Amazon is guided by four principles: customer obsession rather than competitor focus, passion for invention, commitment to operational excellence, and long-term thinking. We are driven by the excitement of building technologies, inventing products, and providing services that change lives. We embrace new ways of doing things, make decisions quickly, and are not afraid to fail. We have the scope and capabilities of a large company, and the spirit and heart of a small one.
Together, Amazonians research and develop new technologies from Amazon Web Services to Alexa on behalf of our customers: shoppers, sellers, content creators, and developers around the world.
Our mission is to be Earth's most customer-centric company. Our actions, goals, projects, programs, and inventions begin and end with the customer top of mind.
You'll also hear us say that at Amazon, it's always "Day 1." What do we mean? That our approach remains the same as it was on Amazon's very first day - to make smart, fast decisions, stay nimble, invent, and focus on delighting our customers.
Similar jobs
Job Description
This is a remote position.
Requirements
- You need to be excited about the problem that we are trying to solve
- Should have excellent command over designing systems with a minimum experience of 4 years.
- Should have experience with various database flavors and writing complex queries. We work with Postgres, Redshift, ElasticSearch, TimescaleDB, and Redis.
- Additional knowledge in Golang will be an advantage
- Strong Data Structures and Algorithms knowledge
- Should have created APIs from scratch which is being used in Production
- Should be comfortable with creating systems handling up to 100k requests per minute, and have a mindset that understands scale
- Ability to give clarity and communicate well with the team, including Product, Backend and Dev-Ops (if and when needed)
- Ability to use profiling tools well, getting to root causes of bugs fast
- Ability to pick and work on adjacent technologies if and when required (Eg: If the best performance monitoring solution needs a basic firebase setup, that should not be a blocker for you to go ahead and do so)
- Knowledge of how to set up relevant test cases
- You need to be comfortable working in a remote environment (Good internet connection and availability on phone is required)
- App Development experience
- Experience in Test Driven Development
- Ability to tell Product what creates better User Experience, ability to tell frontend what API responses will help the user get a faster load time
- Inquisitiveness to understand the system as a whole, and not only be stuck to your domain of expertise (Eg: Figure out why excessive APIs calls are being made, brainstorm with Product and Frontend team to reduce the same without harming the UX )
- Experience in working on a Social Media Product
- Good knowledge of Graphs, and their applications
- Data-Driven Approach to monitoring
Benefits
- Work timings - You are the master of your time. However, with great freedom comes great responsibility. If you have committed something to the team, we expect that you will give it your best to make sure that commitment is done and is done on time.
- Leave policy - Take a leave whenever for whatever reason you want. You don't need to explain yourself to us
- Health insurance for you and your family
Your responsibilities will include:
Designing, implementing and maintaining Java-based applications
Contributing in all phases of the development lifecycle
Writing testable, scalable and efficient code
Test and debug new applications and updates
Maintain up to date code documentation
Participating in code reviews
Key Requirement:
- You have prior experience in Core Java.
- Strong knowledge of Java Application Frameworks
- Hands-on experience working in SQL
- Develop new features understanding current architecture of system
- Responsible to design , develop, test, integrate and support product life cycle.
- Developing existing systems by analyzing and identifying areas for improvements
- Creating Design/Architecture documents, technical specifications, and test cases in line with Quality systems
- Maintaining systems by identifying and correcting software defectsDeveloping / Influencing Requirements.
- Willing and flexible to work on C++
- Consulting internal / external stakeholders concerning maintenance and performance of software systems; implementing software solutions
- "Strong Object Orientated C++
Overview Atom Technologies began its operations in 2005, with the sole aim of providing secured and seamless digital payment solutions to all. Throughout the years, Atom has been successfully developing innovative and award-winning digital payment solutions, catering to the needs of Small and Medium Merchants alike. This encompasses services like POS, Payment Gateway, IVR and Mobile Application. Roles and Responsibilities · Displaying sound knowledge of software engineering process, you will work on Payment domain projects · You will participate in AGILE teams. · You should have ability to work as an individual contributor. · You will need to use capability of customer focus and collaboration skills · Using good analytical, debugging and tracing skills, you should be well-versed with clean code principles (SOLID, DRY, KISS) and exposure to secure coding is beneficial.
|
Software Developer:
- Strong experience on Java and Python
- Experience on Kafka, Kubernetes, and React
- Must have experience on any one database
- Location :Bangalore and Hyderabad
- Experience : 5-10 Years
-Min 1 yrs exp in dotnet core
-Strong in SQL database
-Excellent communication skill
-Open for Pune or Permanent remote
Role & Responsibilities:
-
Handle multiple products/modules simultaneously, lead the team in development and support
-
Lead development teams
-
Daily updates to customers and Product Managers/Delivery Managers
-
Participate in design discussions
-
Design and Architect small modules
-
Effort estimations for modules, subsystems or use cases.
-
Learn new skills and mentor the new team members
-
Champion best practices within the team, including code reviews
Work Experience & Skills:
-
B.E/B.Tech or any relevant Masters degree from reputed college.
-
Strong 5+ years of experience in Java, J2EE, Spring IOC, Spring Annotations, Spring, JDBC, Jquery, Java script, HTML 5 and CSS
-
Strong experience in Postgres or any SQL technology
-
Experience with working on Tomcat, Apache, JBoss or any similar application server
-
Should have 3+ years of experience in leading team.
-
Good experience in JSON / RESTful API / Web Services.
-
Experience in working on Agile methodology using Scrum and sprints
-
Experience in using build tools, Maven, GIT, Bugzilla or similar tools.
-
Experience in cloud technologies, Microservices and frameworks such as AWS or GPC,
container technologies like Docker is a plus.
-
Ability to adapt to new development environments, changing business requirements and learning new systems highly desired
-
Experience in Microservices, SpringBoot and Angular is a plus.
-
Experience with tuning deployed applications for scalability and performance.
-
Good knowledge of deployment and scripting on Linux/Unix servers
-
Strong technical documentation skills.
-
Good oral and written communication skills
- Owns team's output and E2E definition and execution of SDLC. Drives sprint planning, estimates & prioritizes tasks, Keeps key stakeholders updated on progress, milestones, and any potential slippages.
- Identifies pitfalls across codebases proactively. Writes model code that is looked up to. Understands internals of programming languages & runtimes. Creates common reusable components/libraries- Uses advanced data structures.
- Designs API contracts between large systems with end-to-end service design and active leadership towards long-term sustainability including versioning, complex migration plans, impact analysis across products.
- Owns NFRs and pushes the envelope on performance, scalability, and high availability with cognizance towards the cost of infra. Drives tech stack selection independently, mentors junior engineers. Evangelises of generic platform building across the organization.
- Troubleshoots unseen issues across codebases. Solves large end-to-end cross-cutting problems with elegant solutions with an eye on long-term sustainability.
- Partners with and influences product managers on “how”. Leads the pack on hiring and evangelizes steeper hiring standards towards building an A+ team. Represents company on external platforms/conferences.
Qualifications:
- Bachelor's Degree in Computer Science or similar discipline
- 7+ years relevant work experience in software engineering while leading teams.
- Proficiency in more than one modern programming language such as Python (preferred) associated tech stack to write maintainable, scalable, unit-tested code
- Experience in building complex software systems that have been successfully delivered
- Should be strong with System Design and Database designing
- Deep understanding of design patterns, optimizations, deployments with Strong object-oriented design skills
- Experience mentoring other software engineers.
- Experience with full life cycle development in any programming language