Senior Java Engineer
Role in brief
CoinMarketCap seeks a Senior Java Engineer to develop and optimize the data infrastructure for cryptocurrency information. This role involves designing and maintaining robust Java applications, ensuring system stability, and translating business needs into technical solutions. Ideal for experienced Java developers skilled in core Java, Spring, and various data technologies.
About the role
This role focuses on building and maintaining the core Java applications that power CoinMarketCap's cryptocurrency data platform. You will be responsible for independently investigating and designing complex systems, translating business requirements into functional applications, and ensuring the overall performance and stability of services. The work involves writing efficient, reusable Java code and upholding quality and security standards.
A key aspect of this position is optimizing system performance and promptly identifying and resolving bottlenecks and bugs. You will contribute to maintaining high code quality and organization, ensuring the responsiveness and reliability of applications. This involves a deep understanding of server-side Java technologies and frameworks to deliver a seamless experience for millions of users.
Success in this role means consistently delivering stable, high-performing Java applications that accurately process and display cryptocurrency data. It requires a proactive approach to system design and problem-solving, ensuring that the platform remains a trusted source of information. Your contributions will directly impact the reliability and efficiency of CoinMarketCap's data services.
The salary for this position ranges from $97,750 to $149,500 USD annually.
Skills that matter here
- Java: This role requires strong skills in core Java and server-side Java technologies for application development.
- Spring: Extensive experience with Spring frameworks is necessary for designing and maintaining applications.
- Redis: Familiarity with Redis is expected for working with underlying middleware and data caching.
- MongoDB: Experience with MongoDB is required for database interactions and system design.
- Kafka: Familiarity with Kafka is needed for handling event processing models within the system.
- K8s: Knowledge of Kubernetes is expected for deployment and orchestration of applications.
Who this role suits
- A developer with over eight years of experience in the full lifecycle of Java application development within a similar industry.
- Someone who understands the underlying principles of commonly used middleware and can troubleshoot online systems effectively.
- An individual with solid knowledge of event processing models, multi-threading, and enterprise integration patterns.
- A professional who can independently design complex systems and translate business needs into technical solutions.
From the employer
- Independently investigate and design relatively complex systems
- Optimize system performance and ensure the stability of system services
- Translate business requirements and use cases into functional applications
- Design, build, and maintain efficient, reusable, and reliable Java code
- Review, test, and verify code for adherence to quality and security standards
- Ensure the best possible performance, quality, and responsiveness of the applications
- Identify bottlenecks and bugs, and devise solutions to these problems
- Help maintain code quality and organization
- 8+ years of Online troubleshooting experience with full lifecycle of project development for Java applications from similar industry
- Understand the underlying principles of commonly used middleware
- Familiar with Redis/MongoDB/MySQL/Kafka/xxl-job/K8s/SpringBoot/localCache/Prometheus
- Strong skills in core Java, server-side Java technologies, and Spring frameworks
- Extensive experience in software design, architecture, development integration
- Solid knowledge of event processing models, multi-threading, enterprise integration pattern, Web Service and REST
- Experience in Reactor and Microservice would be an added value
- Basic or Fluent English level
Questions about this role
What is the remote work policy for this role?
This is a fully remote position, allowing you to work from any location.
What level of seniority is expected for this position?
This is a senior-level role, requiring significant experience in Java application development.
What are the key technical skills required?
Key technical skills include Java, Spring, Redis, MongoDB, MySQL, Kafka, K8s, and Prometheus, along with experience in software design and architecture.