Your opportunity
At New Relic, we provide our customers real-time insights, so they can innovate faster. Our software delivers insightful observability tools across different technologies and distributed systems, enabling software engineering teams to quickly identify, understand and tackle issues, analyze performance and get the most of their software and infrastructure.
The usage & rating team under Data Technology organization is looking for a Senior Software Engineer to join the team in Bangalore, India. The team is responsible to build and maintain a
large scale, highly performant platform to process the usage data for billing. The APIs and the backend services are both mission critical for our business and customers. Technologies we work with include AWS, Kafka, Spring Boot/Dropwizard microservices, distributed data stores like Redis.
What you'll do
- Build, maintain, and scale back-end services and their support tools.
- Participate and sometimes lead in architectural definitions with a high degree of innovation and creativity.
- Create automation and tooling to make our systems more scalable and easier to deploy.
- Research new tools and services to understand complex scenarios and to also propose new features.
- Ship incrementally and often, helping the team to maintain a constant flow of feedback on its work.
- Work in an agile environment with a DevOps approach—teams build and maintain their own software, including taking turns with being on-call.
This role requires
- 4+ years of hands-on professional experience with distributed systems, data streams (Kafka preferred), concurrency, and scaling in a production environment.
- Strong experience writing software and services in a high level languages such as Java / Kotlin
- Experience with data centric languages and technologies such as SQL, Python, DBT, or Spark and working with data architectures such as data lakes and EDWs.
- Experience in technical mentorship and support for helping level up the skills of colleagues on the team.
- Being comfortable in a fast-paced environment focused on delivering production code at a regular cadence using Agile techniques, tools and methodologies.
- Having a collaborative work style that includes colleagues in important decisions and leads to shared code ownership
Bonus points if you have
- Understanding the value that build and test automation brings to a development team's efficiency and reliability and are passionate about applying these techniques to your projects.
- Familiarity with asynchronous programming techniques: streams, event-based flows, task queues, message queues.
- Familiarity with the financial domain or other regulatory and mission critical systems.