You will get while working with us
- Opportunity to work on highly distributed systems with micro-services architecture and big-data volumes
- Solve challenging real-world problems by leveraging OOP & functional programming concepts
- Opportunity to incubate an open source project
- Get to work with cutting edge technologies to name a few Kafka, Elasticsearch, Postgres, Scala
- Developing scalable, sustainable and reliable enterprise systems
- Hands-on experience of working with TDD and BDD
- Develop environment using practices such as Continuous Integration, Continuous Delivery
- Learning opportunity on how to turn complex business requirements into a working product
Roles & Responsibilities
- Requirement understanding & analysis by interacting with client
- Carry out architectural and design discussions with fellow team members and come up with right approach
- Understand system domain, user’s perspective of system and use-cases
- Understand patterns in existing code and effectively leverage and improvise it
- Develop backend involving Java8 based functional programming and REST services
- Ensure best practices of code reviews, automated testing and CI
- Research new tools & technologies required for the projects
- Mentor fellow team members and bring their level up
Must have
- Strong hold on written/verbal communication
- Strong core Java fundamentals
- Strong Analytical & problem solving skills
- Proactive and inherent nature of working with ownership
- Passion of writing clean code
- Experience in designing relational data model from business requirements
Good to have
- Knowledge of functional programming (Scala or Java 8 lambda)
- Knowledge of NOSQL
- Working knowledge of linux & networking
- Performance optimisation - Optimise/refactor queries, code, stored procedures to take performance next level

Similar jobs
- 3 - 5 years of progressive IT experience with a minimum of 1+ years in building Ruby on Rails Web applications and RESTful API endpoints
- Proficient with scripting languages, specifically Python and Bash
- Experience in Object Oriented Java Script.
- Must have Linux command line experience.
- Good experience in developing and integrating reliable REST web services.
- Possess good communication, organizational and creative thinking skills.
- Multi-tasking individual that likes to work both in a team environment and individually
- Excellent technical abilities, leadership, decision making, and adaptability to new technology
- Good knowledge of Agile processes and practice
- Team player

Developer – Golang
Responsibilities:
-
An individual contributor who will be part of the Software R&D team working on the following areas
-
Backend work in Golang, Micro services architecture
-
Work with internal team and customers to deliver solutions that will meet the customer needs with respect to the performance security, scalability and functionality.
-
Implementation of API and authentication methods using JWT
-
Writing scalable, robust, testable, efficient, and easily maintainable code
-
Translating software requirements into stable, working, high performance software
Skills
-
2-5 years of experience in Go programming language
-
Strong experience in working with Goroutine and channel patterns
-
Experience in Go framework for DB, JSON, Sockets, Web Frameworks and tools
-
Knowledge of logging and configuration packages like Zap, Viper
-
Experience in writing unit tests for Golang code
-
Familiarity with code versioning tools such as Git or Azure Repo
-
Should have knowledge of MySQL, PostgreSQL, or any RDBMS
-
Good knowledge of Linux / Ubuntu
Requirements
-
Overall 2-8 years of software development experience in building web-based and highly scalable applications
-
Excellent understanding of core computer science concepts like algorithms, data structure, system design, OOP, etc.
-
Deep knowledge and development expertise in Core Java and SpringBoot or other equivalent frameworks
-
Strong experience in HTML5 and CSS3 and should have basic experience in JS technologies
-
Good knowledge of database concepts, having SQL writing experience, and familiarity with at least one of the relational databases
-
Worked in a CI/CD environment with Jenkins
-
Experience working in an agile team with software engineering practices like automated testing, test-driven development, continuous integration, etc is a big plus.
-
Ability to quickly learn and evaluate new technologies and work effectively in a fast-paced, dynamic environment
-
Strong oral and written communication.
Your Qualifications:
7 to 12 years of experience with majority as Java engineer
Strong hands on experience on building application using technologies Java, Spring, Hibernate, Maven/Gradle.
Experience in building Micro Services using Spring Boot / Go.
Strong knowledge and experience with SQL queries and databases like Postgre SQL/Oracle.
Strong knowledge and experience on Platform components such as Docker, Kubernetes and Service Mesh (Istio).
Good knowledge of scripting languages (preferably Python and Bash)
Familiarity with CI/CD environment (Jenkins).
Experience on Observability stack such as ELK Stack, Prometheus & Grafana would be added advantage.
Should have experience on Active MQ based async queuing system design and deployment.
Strong experience of system design and implementation of end-to-end integrated systems.
Familiarity with Hazelcast and Zk Solution would be a plus.
Strong skills to write technical design documentation.
Experience of leading a team as tech lead.
Ability to work effectively in a team environment as well as independently.
Good communication skills with tech/non-tech people.
What You'll Do:
Assigned to software development projects and/or system enhancements as tech lead.
Be engaged in a whole process of development project (requirements analysis, design, implementation, testing/verification, deployment, operation/maintenance).
Work closely with project manager and other engineers. Some of them are in different locations such as Japan and Singapore.
Always improve the design quality, code quality, testing quality and system quality spontaneously. In addition, create such a culture in our team.
Understand business needs and user behavior and develop solutions to those needs.
Develop and maintain a deep understanding of our systems and propose system improvements.
Guide and support less-experienced members as mentor and role model to improve the team productivity and achieve team’s goals together.
Better to Have:
Familiarity with Telecom Service Provider’s Billing Ecosystem/BSS Systems.
Familiarity with and experience on Cloud Native Technologies.
Familiarity with Agile Software development process.
Familiarity with and experience on Linux/Unix environment
Work experience with a remote team
Familiarity with Atlassian tools (JIRA, Confluence, HipChat)
Familiarity with source control system (Gitlab, SVN, etc.)
OUR COMMITMENT TO YOU:
You'll benefit from our network of global communities and collaborative culture that will help you build technical and functional skills and capabilities. And because we serve more than 28 countries industries globally, you'll have the opportunity to develop valuable industry-specific expertise.
The scale of our capabilities and client engagements and the unique way we innovate, operate and deliver value will give you the opportunity to deepen your existing skills even as you help create the latest technology trends. You'll have access to leading-edge technology.
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.
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.
About Amazon.com
“Many of the problems we face have no textbook solution, and so we-happily-invent new ones.” – Jeff Bezos
Amazon.com – a place where builders can build. We hire the world's brightest minds and offer them an environment in which they can invent and innovate to improve the experience for our customers. A Fortune 100 company based in Seattle, Washington, Amazon is the global leader in e-commerce. Amazon offers everything from books and electronics to apparel and diamond jewelry. We operate sites in Australia, Brazil, Canada, China, France, Germany, India, Italy, Japan, Mexico, Netherlands, Spain, United Kingdom and United States, and maintain dozens of fulfillment centers around the world which encompass more than 26 million square feet.
Technological innovation drives the growth of Amazon, offering our customers more selection, convenient shopping, and low prices. Amazon Web Services provides developers and small to large businesses access to the horizontally scalable state of the art cloud infrastructure like S3, EC2, AMI, CloudFront and SimpleDB, that powers Amazon.com. Developers can build any type of business on Amazon Web Services and scale their application with growing business needs.
We want you to help share and shape our mission to be Earth's most customer-centric company. Amazon's evolution from Web site to e-commerce partner to development platform is driven by the spirit of invention that is part of our DNA. We do this every day by inventing elegant and simple solutions to complex technical and business problems. We're making history and the good news is that we've only just begun.
About Amazon India
Amazon teams in India work on complex business challenges to innovate and create efficient solutions that enable various Amazon businesses, including Amazon websites across the world as well as support Payments, Transportation, and Digital products and services like the Kindle family of tablets, e-readers and the store. We are proud to have some of the finest talent and strong leaders with proven experience working to make Amazon the Earth’s most customer-centric company.
We made our foray into the Indian market with the launch of Junglee.com, enabling retailers in India to advertise their products to millions of Indian shoppers and drive targeted traffic to their stores. In June 2013, we launched www.amazon.in for shoppers in India. With www.amazon.in, we endeavor to give customers more of what they want – low prices, vast selection, fast and reliable delivery, and a trusted and convenient online shopping experience. In just over a year of launching our India operations, we have expanded our offering to over 18 million products across 36 departments and 100s of categories! Our philosophy of working backwards from the customers is what drives our growth and success.
We will continue to strive to become a trusted and meaningful sales and logistics channel for retailers of all sizes across India and a fast, reliable and convenient online shopping destination for consumers. For us, it is always “Day 1” and we are committed to aggressively invest over the long-term and relentlessly focus on raising the bar for customer experience in India.
Amazon India offers opportunities where you can dive right in, work with smart people on challenging problems and make an impact that contributes to the lives of millions. Join us so you can - Work Hard, Have Fun and Make History.
Experience: 5+ Years
An Architect is a hands-on, talented, innovative, and practical individual with functional experience to design, implement and support the delivery of core products and product components.
- Capable of working under minimal direction and exercising considerable latitude, they will provide technical expertise in developing solutions to complex software engineering problems, which require frequent use of ingenuity and creativity.
- Experienced in designing application framework solutions, performing architectural analysis, and identifying issues and provide solutions for the business problems.
- Sound functional knowledge of application architecture service architecture, code modularity, data synchronisation, customisable workflow management, partner application integration and API developer frameworks.
- Responsibilities:
- Lead the design and development of new architecture and major functional upgrades for the most advanced capabilities
- Provide technical guidance and mentorship to engineers, designers, and developers.
- Engage cross-organizational teams such as Product Management, Integrations, Services, Support, and Operations, to ensure the success of overall software development, implementation, and deployment.
- Requirements:
Ideal candidate should have
- 7+ years of system implementation experience
- Experience with any of the following languages like Java / Nodejs / ROR / Python
- Expertise in micro service / Data modelling / AWS / Messaging
- Expertise in building scalable & reliable systems
- Good Experience in working with technologies like AWS, Redis,
- Experience in messaging systems like SQS/RabbitMQ
- Good knowledge of caching, Databases, distributed systems.
- Strong problem solving and analytical skills
- Good experience with Devops
- Should have experience in supporting the application and infrastructure 24x7.
- Should have good working knowledge on troubleshooting skills of Operating Systems (Linux/Windows)
- Good experience on Java/j2EE application supporting and AWS infra supporting.
- Ability to work with 3rd parties/FOPS and provide required instruction to troubleshoot and restore faults.
- Respond quickly and effectively to production issues, troubleshooting solutions, and taking responsibility for seeing those solutions through resolution.
- Identify root cause and corrective actions for highly complex availability, capacity, security, performance, and quality issues affecting the database.
- Strong knowledge of Linux/Unix operating system.
- Good knowledge in scripting languages like Shell, Python.
- Good Knowledge on Databases like Mongo, Mysql, SQL Server.
- Respond to alerts and take corrective action to ensure the high-availability of our production environments and participate in an after-hours on-call rotation.
- Experience/Knowledge of other cloud platforms (Azure, Google Cloud) is a plus
- Strong verbal and written communications skills are a must
- Must have production support experience as the requirement is 24X7X365 production support.

This leads to a very interesting and challenging use case in the emerging field of large scale distributed HTAP, which is still not mature enough to provide a solution out of the box that works for our scale and SLAs. So, we are building a solution that can handle the complexity of our use case and scale to several trillions of rows. As a "Database Engineer", you will evolve, architect, build and scale the core data warehouse that sits at the heart of Clarisights enabling large scale distributed, interactive analytics on near realtime data.
What you'll do
- Understanding and gaining expertise in existing data warehouse.
- Use the above knowledge to identify gaps in the current system and formulate strategies around what can be done to fill them
- Avail KPIs around the data warehouse.
- Find solutions to evolve and scale the data warehouse. This will involve a lot of technical research, benchmarking and testing of existing and candidate replacement systems.
- Bulid from scratch all or parts of the data warehouse to improve the KPIs.
- Ensure the SLAs and SLOs of data warehouse, which will require assuming ownership and being oncall for the same.
- Gain deep understanding into Linux and understand concepts that drive performance characteristics like IO scheduling, paging, processing scheduling, CPU instruction pipelining etc.
- Adopt/build tooling and tune the systems to extract maximum performance out of the underlying hardware.
- Build wrappers/microservices for improving visibility, control, adoption and ease of use for the data warehouse.
- Build tooling and automation for monitoring, debugging and deployment of the warehouse.
- Contribute to open source database technologies that are used at or are potential candidates for use.
What you bring
We are looking for engineers with a strong passion for solving challenging engineering problems and a burning desire to learn and grow in a fast growing startup. This is not an easy gig, it will require strong technical chops and an insatiable curiosity to make things better. We need passionate and mature engineers who can do wonders with some mentoring and don't need to be managed.
- Distributed systems: You have a good understanding of general patterns of scaling and fault-tolerance in large scale distributed systems.
- Databases: You have a good understanding of database concepts like query optimization, indexing, transactions, sharding, replication etc.
- Data pipelines: You have a working knowledge of distributed data processing systems.
- Engineer at heart: You thrive on writing great code and have a strong appreciation for modular, testable and maintainable code, and make sure to document it. You have the ability to take new initiatives and questioning status quo.
- Passion & Drive to learn and excel: You believe in our vision. You drive the product for the better, always looking to improve things, and soon become the go-to person to talk to on something that you mastered along. You love dabbling in your own side-projects and learning new skills that are not necessarily part of your normal day job.
- Inquisitiveness: You are curious to know how different modules on our platform work. You are not afraid to venture into unknown territories of code. You ask questions.
- Ownership: You are your own manager. You have the ability to implement engineering tasks on your own without a need for micro-management and take responsibility for any task that has been assigned to you.
- Teamwork: You should be helpful and work well with teams. You’re probably someone who enjoys sharing knowledge with team-mates, asking for help when they need it.
- Open Source Contribution: Bonus.






