- Design and develop : Lightweight, high-performance, and scalable Java-based agents for data collection from JVMs and other systems in customer production environments.
- Implement integrations : Integrations with multiple systems and data sources, supporting protocols such as TCP, HTTP, and REST APIs.
- Maintain and enhance : Existing Java-based data collection agents including debugging, root cause analysis, solution design, and working with customer-facing teams to deploy fixes.
- Ensure code quality : By following best practices such as writing design specifications, adhering to coding standards, performing thorough unit testing, and participating in peer code reviews.
- Take end-to-end ownership : Of solutions from requirement analysis to production deployment.
- Collaborate cross-functionally : With product, platform, and support teams to deliver robust solutions.
- Contribute to Java-based development initiatives beyond agent development when required (e.g., building custom adapters, platform modules, or supporting services).
What You Bring :
Mandatory Skills :
- 5 - 7 years of strong programming experience in Java, with proven ability to build reliable, performant, and maintainable code.
- Experience with multithreaded programming, file handling, and socket programming in Java.
- Good understanding of Java Management Extensions (JMX) for monitoring and management.
- Hands-on experience consuming REST APIs using Java.
- Strong problem-solving and analytical skills, with an eye for detail and debugging complex production issues.
- Excellent communication skills able to clearly document, present, and discuss technical solutions.
- Proven ability to work both independently and as part of a collaborative team.
- Strong aptitude and curiosity to learn new technologies and domains quickly.
Good To Have :
- Experience with Java application servers (e.g., Tomcat, JBoss, Jetty).
- Familiarity with Apache Kafka client libraries and event-driven systems.
- Exposure to distributed systems or big data technologies such as Apache Spark, Redis, Cassandra, Hadoop, MySQL.
Screening Questions :
1. Do you have at least 5 years of professional Java programming experience? (Yes/No)
2. How many years of experience do you have with multithreaded programming in Java? (Numerical)
3. Do you have hands-on experience with Java Management Extensions (JMX)? (Yes/No)
4. Are you experienced in consuming REST APIs using Java? (Yes/No)
5. How many production-level debugging or root cause analysis projects have you led? (Numerical)
6. Do you have experience working with Java application servers like Tomcat or JBoss? (Yes/No)
7. Are you familiar with Apache Kafka client libraries? (Yes/No)
8. How many years of experience do you have working with distributed systems? (Numerical)
9. Are you comfortable collaborating with cross-functional teams including product and support? (Yes/No)
10. How many different big data technologies (e.g., Spark, Redis, Cassandra) have you worked with? (Numerical)