Software Engineer (Java)
About the Role
As a Software Engineer, you will design and build scalable, resilient systems that power innovative products. You'll work closely with product teams to deliver secure, high-quality code, improve system architecture, and contribute to a culture of collaboration and continuous learning.
Responsibilities
Design, develop, and maintain scalable systems using Java.
Execute software solutions, including design, development, testing, and troubleshooting.
Write secure, high-quality production code and maintain algorithms that integrate seamlessly with core systems.
Contribute to architecture and design documents, ensuring alignment between design constraints and implementation.
Analyze large, diverse data sets to generate insights, visualizations, and reporting that drive continuous improvement.
Identify hidden issues and patterns in data to enhance coding practices and system architecture.
Participate in engineering communities of practice, exploring emerging technologies.
Foster a team culture of diversity, inclusion, and respect. Minimum Qualifications
Practical experience in system design, application development, testing, and operational stability.
Proficiency in Java programming.
Experience developing, debugging, and maintaining code in large-scale environments using modern programming and database querying languages.
Strong understanding of the software development life cycle.
Familiarity with agile methodologies, CI/CD, application resiliency, and security practices.
Knowledge of software applications and technical domains such as cloud, AI/ML, or mobile. Preferred Qualifications
Experience with modern front-end technologies.
Exposure to cloud platforms and services.
Familiarity with tools and frameworks such as AWS, Cassandra, Kafka, REST, Terraform, Spring Boot, JMeter, LoadRunner, and Dynatrace (nice to have, not required).