Position Title: Senior Software Engineer
Employee Status: Full Time
Location: Omaha, NE
Purpose: Seeking a Senior Software Engineer - Distributed Systems to join our dynamic ETG team. If you are an experienced software engineer with a passion for designing, developing, and maintaining high-performance applications in a modern, agile environment, please apply.
Responsibilities: - Design, develop, and maintain scalable software solutions using Java, Spring Boot, and Microservices architecture.
- Implement high-quality code, including writing and performing unit tests using JUnit, Mockito, and related frameworks.
- Build and optimize RESTful APIs for seamless integration across business services.
- Develop front-end applications using modern JavaScript frameworks such as React or Angular.
- Work within a DevOps/DevSecOps environment, ensuring CI/CD pipelines and containerized deployments (Docker, Kubernetes).
- Collaborate with architects and software engineers to ensure adherence to best practices and design patterns.
- Troubleshoot and resolve complex software issues, performing root cause analysis and implementing robust solutions.
- Participate in agile scrum development cycles, providing input on design, estimates, and implementation strategies.
- Mentor junior developers, fostering a culture of knowledge-sharing and technical excellence.
Work Requirements, Experience, Education, and Skills: - Bachelor's degree in Computer Science, MIS, or related field (or equivalent experience).
- 7+ years of professional experience developing enterprise-level software applications.
- Strong expertise in Java (Streams, Lambda, Predicates, etc.), Spring Boot, and Microservices.
- Hands-on experience with React/Angular, Bootstrap/Material, HTML5, CSS3, and Node.js.
- Proficiency in SQL and relational database management, with experience using JPA/Hibernate.
- Solid understanding of OAuth2.0, OpenID Connect, API Gateways, and JWT tokens.
- Proven track record of working in CI/CD and containerized environments (Docker, Kubernetes, Jenkins, GitLab CI/CD, etc.).
- Experience in Agile/Scrum methodologies and Test-Driven Development (TDD).
- Excellent problem-solving, communication, and collaboration skills.