Basic Qualifications:
- 2+ years of non-internship professional software development experience
- Programming experience with at least one modern language such as Java, C++, or C# including object-oriented design
- 1+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems.
Additional Job requirements
- BS/MS/PhD in Computer Science/Math or equivalent
- BS in computer science or related field.
- 2+ years of relevant professional software development experience: designing, developing, and delivering software written in Java, C#, or C++, web development.
- Knowledgeable in object-oriented design patterns.
- Experience building highly scalable and distributed systems
Preferred Qualifications
- Experience with service-oriented architecture and application/services development
- Passion for performance debugging and benchmarking
- Ability to clearly and concisely communicate with technical and non-technical stakeholders across all levels of the organization
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
Requirements
- 3+ years work experience with production-grade python. Contribution to open source repos is preferred
- Experience writing concurrent and distributed programs, AWS lambda, Kubernetes, Docker, Spark is preferred.
- Experience with one relational & 1 non-relational DB is preferred
- Prior work in the ML domain will be a big boost
What You’ll Do
- Help realize the product vision: Production-ready machine learning models with monitoring within moments, not months.
- Help companies deploy their machine learning models at scale across a wide range of use-cases and sectors.
- Build integrations with other platforms to make it easy for our customers to use our product without changing their workflow.
- Write maintainable, scalable performant python code
- Building gRPC, rest API servers
- Working with Thrift, Protobufs, etc.
Requirements:
- Proficient in fundamental Software Design Principles, Data Structures, Algorithms, Problem Solving and Complexity Analysis.
- Proficient in programming languages like Python/Java/Javascript/Golang or similar.
- Strong understanding 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.
- Hands-on Experience with SQL/NoSQL databases such as Postgres, Mysql, MongoDB.
- Hands-on experience with GIT, CI/CD, REST APIs and Cloud ( AWS/ GCP/ Azure) will be preferred.
- Understanding of Microservice Architecture and System Design Principles is a plus.
- Self-driven, detail-oriented and Strong sense of ownership, urgency, and ability to deliver great work.
- Demonstrated expertise in developing, releasing and maintaining large scale software applications.
Job Description:
Good knowledge of python & Java. The order of need should be
- Builds (TeamCity/Jenkins, Urban Code Deploy, ANT/Maven)
- Python scripting
- JAVA
- Linux/Unix
And candidate should possess knowledge on the below :
- JIRA or other
- Agile (Scrum/Kanban, etc.)
- Bit bucket/GIT/SVN/Artifactory
- Linux/Unix
- Jenkins/Team City – ANT/Maven
- Usage & setup of IDE’s
- Solid experience in RoR, Golang, NodeJS or Python. Good to have exposure to ML.
- Should have experience in cloud computing
- Has an ability to quickly learn and contribute in multiple codebase
- Overcomes roadblocks and requires minimal oversight
- Takes initiatives to fix issues/tech debts before assigned to him/her
- Able to deep dive into codebase and advise QA of possible regression impact
- Communicates tech decisions through design docs and tech talks
- Has delivered projects with end-to-end accountability
- Keeps track of industry trends and introduces right tech/tools for a given job
- Excellent understanding of software engineering practices, Design Patterns, Data Structures, Algorithms
Job brief
We are looking for a Java Developer with experience in building high-performing, scalable, enterprise-grade applications.
You will be part of a talented software team that works on mission-critical applications. Java developer roles and responsibilities include managing Java/Java EE application development while providing expertise in the full software development lifecycle, from concept and design to testing.
Java developer responsibilities include designing, developing and delivering high-volume, low-latency applications for mission-critical systems.
Responsibilities
- Contribute in all phases of the development lifecycle
- Write well designed, testable, efficient code
- Ensure designs are in compliance with specifications
- Prepare and produce releases of software components
- Support continuous improvement by investigating alternatives and technologies and presenting these for architectural review
Requirements and skills
- BS/MS degree in Computer Science, Engineering or a related subject
- Proven hands-on Software Development experience (Microservices & Springboot)
- Proven working experience in Java development
- Hands on experience in designing and developing applications using Java EE platforms
- Object Oriented analysis and design using common design patterns.
- Excellent knowledge of Relational Databases, SQL and ORM technologies (JPA2, Hibernate)
- Experience in the Spring Framework
- Experience in developing web applications using at least one popular web framework (Spring MVC)
- Experience with test-driven development
Responsibilities :
- Design and develop scalable, high performance, and reliable API driven services/applications in Java language that operate whole day.
- Produce high quality software that is unit tested, code reviewed, and checked in regularly for continuous integration.
- Interact with both business, financial research, and technical stakeholders to deliver high quality products and services that meets/exceeds business, customer, and technical requirements.
- Own products and code from cradle to grave including production quality/performance monitoring.
Required Skills :
- Experience building and running high performance enterprise applications developed in Java language.
- Hands on experience developing Java web applications built with modern standards-based APIs including Java based REST APIs and implementations.
- Experience in Java language APIs, Spring technologies, Hibernate, JDBC, RDBMS and NoSQL based data persistence.
- Experience developing solutions on AWS Cloud leveraging AWS Lambda, S3, DynamoDB, Cloud Formation, and other related AWS technologies.
- Solid understanding of Domain Modeling with Relational and Non-Relational Databases.
- Excellent debugging and problem-solving skills, including ability to diagnose and fix performance and scalability issues.
- Experience working in an agile methodology-based development environment.
- Excellent written and verbal communication skills.
- BS/B.Tech/M.Tech in Computer Science or a related field.
Share your resumes if this opportunity suits you.
Working in highly collaborative teams and building quality code
Working in lots of different domains and client environments also understanding the business domain deeply
Architect highly scalable, highly available, reliable, secure and fault-tolerant systems with minimal guidance
Suggest new architectural elements to improve the existing architecture
Design and implement low latency RESTful services; Define API contracts between services; Version APIs and make them backward compatible
Translate business requirements into scalable and extensible design
Create platforms, reusable libraries and utilities wherever applicable
Continuously refactor applications to ensure high-quality design
Choose the right technology stack for the product systems/subsystems
Write high-quality code that are modular, functional and testable; Establish the best coding practices
Formally mentor junior engineers on design, coding and troubleshooting
Plan projects using agile methodologies and ensure timely delivery
Troubleshoot issues effectively in a distributed architecture
Communicate, collaborate and work effectively in a global environment
Operationalize releases by partnering with Tech operations on capacity planning and operability of the product.
Skills Required:
Proficient in JVM based language(like Java, Groovy), J2EE technology stack
Expertise in API design and development, experience in dealing with a large dataset
Strong in collections, algorithms, multithreading, also have worked on Springboot, Hibernate frameworks.
Practicing the coding standards (clean code, design patterns, etc)
Very strong object-oriented design skills, awareness of design patterns and architectural patterns
Performance tuning and Troubleshooting memory issues, GC tuning, resource leaks, etc.
Strong problem-solving skills, algorithmic skills and data structures
Experience in agile methodologies like Scrum
Good understanding of branching, build, deployment, continuous integration methodologies
Experience in leading a team (min 5)and mentoring engineers
Attitude to getting Stuff Done!
Ability to make decisions independently.
Good to have:
Hadoop knowledge
Cloud Platform Architecture
Groovy
If you love to work in a fast-paced startup environment and desire to solve some very
challenging problems using technology, we want to hear from you.
We are looking for an enthusiastic and energetic individual to work as a Senior Software
Developer. You will be involved in working on multiple products for the scaling and growth
stage of the lifecycle.
We work closely with the real world,. If you are interested to grow and learn in your career
and at the same time work on products for the 1Bn user market, we encourage you to apply.
Responsibilities
● Managing and guiding a team of junior developers for timely delivery of product and
milestones
● Optimization of the application for maximum speed and scalability
● Implementation of security and data protection
● Design and implementation of data storage solutions
● Design & Build: Designing and developing high-volume, low-latency applications for
mission-critical systems, and delivering high-availability and performance.
● Collaborate - Collaborating within your product streams and team to bring best
practices and leverage a world-class tech stack.
● Measurable Outcome - You will need to set quantifiable objectives that encapsulate
the quality attributes of a system. The fitness of the application is measured against
set marks.
● DevOps - You will need to set up every essential (tracking/alerting) to make sure the
infrastructure/software you built is working as expected.
● Design and development of our REST APIs
● Help maintain code quality, architecture, and automation
Required Knowledge and Skills
● Over 3 years of experience working in backend development technologies and
DevOps
● Highly curious and ready to dive into complex technical challenges.
● Proficiency in development and scripting in Python, Django/Flask framework.
● Some experience in Angular 6+, JavaScript or TypeScript would be a plus.
● Database design and management, including being up on the latest practices -
bonus points for MySQL and MongoDB
● User authentication and authorization between multiple systems, servers, and
environments
● Integration of multiple data sources and databases into one system
● Management of hosting environment, including database administration and scaling
an application to support load changes
● Setup and administration of backups
● Understanding differences between multiple delivery platforms such as mobile vs
desktop, and optimizing output to match the specific platform
● Creating database schemas that represent and support business processes
● Implementing automated testing platforms and unit tests
● Understanding of “session management” in a distributed server environment
● Server management and deployment for the relevant environment
● Appreciation for clean and well-documented code
● Hands-on experience with architecture and structural design patterns
● Expertise in designing, developing, deploying, and integrating RESTful APIs
● Ability to understand business requirements and translate them into technical
requirements
● A knack for benchmarking and optimization
● Proficient understanding of code versioning tools, such as Git
Personality
● Requires excellent communication skills – written, verbal, and presentation.
● You should be a team player.
● You should be positive towards problem-solving, have a very structural thought
process to solve problems
● Interest to work in a high paced start-up environment with a large amount of learning.
● Good understanding of different frameworks, and be able to pick up new
technologies at ease.
● You should be agile enough to figure out a need for new technologies/frameworks
and learn new technology for better product performance.
Advanced proficiency in MEAN Stack (NodeJS, MongoDB, Express, Angular JS)
Proficiency and hands-on experience with one or more of the following: Backbone / Knockout JS / Ember JS / React JS
Knowledge of JQuery would be an added advantage
Thorough knowledge of software development best practices, including coding standards, code reviews, source control management, build process, continuous integration and continuous delivery
Thorough knowledge of Node.JS, MongoDB, Angular JS, Express JS and JavaScript
Ability to plan core architecture, and to enhance it from time to time
Strong analytical mindset to derive actionable analytics from data