Description

Description:

We are seeking a highly skilled and experienced Software Engineer with expertise in building and scaling applications in fast-paced environments. The ideal candidate will have strong proficiency in Java/Groovy, Spring, Kafka, RabbitMQ, caching technologies like Memcached, and databases such as Cassandra and Postgres. Additionally, experience with public cloud infrastructure, CI/CD tools like GitHub and Jenkins, and monitoring tools such as Grafana, Splunk, and Dynatrace is essential. You will play a critical role in designing, developing, and maintaining high-performance applications that can handle a large number of requests, ensuring system reliability and scalability.

 

Key Responsibilities:

  • Design, develop, and maintain scalable, high-performance applications.
  • Utilize Java and Spring frameworks to build backend services.
  • Implement messaging and streaming systems using Kafka and RabbitMQ.
  • Familiarity with GraphQL is a plus.
  • Design and optimize caching strategies using EHCache, Memcached, or similar technologies.
  • Work with databases such as Cassandra and Postgres for data storage solutions.
  • Work with public cloud infrastructure (AWS, GCP, or Azure) to ensure applications are highly available and resilient.
  • Collaborate with team members through pair programming, design discussions, and code reviews to solve complex problems and ensure high-quality deliverables.
  • Develop and execute unit tests, integration tests, and use Spock/Groovy for testing.
  • Monitor and troubleshoot application performance using tools like Grafana, Splunk, and Dynatrace.
  • Build and maintain CI/CD pipelines using GitHub and Jenkins.
  • Understanding of front-end technologies such as React, JavaScript, etc.
  • Participate in an on-call rotation to provide support for production systems.
  • Ensure code quality, system scalability, and optimal performance in production environments.
  • Work in an agile, fast-paced environment, adhering to best practices for CI/CD and DevOps.

 

Requirements:

Proficiency in:

  • Groovy/Java and Spring frameworks
  • Databases such as Cassandra and Postgres
  • Kafka and RabbitMQ for messaging and streaming
  • Caching technologies like EHCache and Memcached
  • Public cloud infrastructure (AWS, GCP, Azure)
  • GitHub and Jenkins for version control and CI/CD pipelines
  • Grafana, Splunk, and Dynatrace for monitoring and performance analysis
  • Groovy and Spock for automated testing
  • Unit testing and integration testing methodologies
    • Experience in building and scaling applications to handle a high volume of requests.
    • On-call experience: Ability to troubleshoot production issues and provide timely resolutions.
    • Experience in fast-paced environments, with the ability to deliver under tight deadlines.
    • Strong collaboration skills, including experience with pair programming and cross-functional teamwork.
    • Familiarity with CI/CD pipelines and agile methodologies.
    • Location: Candidate must be local to Minneapolis, MN.
    • The candidate must be willing to come to the office at least 2 times a week, depending on team alignment.


 

Education

Any Graduate