Senior Java Developer (Product Discovery)
Midwest Tape
- Holland, OH
- Permanent
- Full-time
- Solution Design and Development
- Re-architect existing PostgreSQL stored procedure logic into Java-based microservices that are scalable, testable, and easier to maintain, using a Kafka-driven, event-based ETL approach for decoupled data processing and system integration.
- Support core eCommerce workflows, with attention to performance, data integrity, and availability.
- Develop and optimize REST APIs to expose business logic.
- Understanding Business Context and Systems
- Dive deep into the business domain to understand existing systems and processes.
- Use this understanding to inform design decisions and improve technical delivery.
- Team Collaboration
- Engage with Product Owners, Engineers, and Agile Leaders to clarify requirements and address challenges.
- Proactively reach out to team members to understand dependencies, resolve issues, and provide updates.
- Ownership and Problem-Solving
- Take ownership of tasks, ensuring they are delivered end-to-end while resolving impediments independently or collaboratively.
- Address and resolve technical challenges efficiently, escalating only when necessary.
- Participation in Agile Practices
- Actively participate in Agile ceremonies, including sprint planning, daily stand-ups, and retrospectives.
- Collaborate in sprint planning to estimate work and deliverables.
- Code Quality and Standards
- Write high-quality, well-documented, and testable code following established patterns and standards.
- Perform code reviews to ensure adherence to best practices, design patterns, and team standards.
- Testing and Quality Assurance
- Write unit and integration tests, apply test-driven development (TDD) principles where appropriate, and ensure comprehensive test coverage across APIs, services, and data layers.
- Partner Collaboration
- Occasionally present solutions or assist in technical discussions during partner calls.
- Technical Skills
- Strong hands-on experience designing and deploying microservices in distributed systems using Spring Boot 3 and Spring Security.
- Experience implementing API authentication and authorization mechanisms such as OAuth 2.0, JWT, and role-based access control (RBAC) within Spring Security.
- Skilled in developing and maintaining RESTful APIs and GraphQL, with experience documenting APIs using Swagger/OpenAPI.
- Deep expertise in Apache Kafka and event-driven architectures, including building ETL-style data pipelines for integration and streaming.
- Solid understanding of relational databases, particularly PostgreSQL, with the ability to read, refactor, and optimize complex SQL; 5+ years working with NoSQL databases, especially MongoDB, including schema design, indexing, and performance tuning.
- Strong grasp of design patterns, SOLID principles, and engineering practices such as Test-Driven Development (TDD), Domain-Driven Design (DDD), and clean architecture.
- Proficient in writing unit and integration tests using JUnit, Mockito, and Spring Test frameworks, with CI/CD automation experience using GitHub Actions.
- Skilled in debugging, performance optimization, and using AI-assisted development tools (e.g., GitHub Copilot) as a core part of the development workflow.
- Proven ability to deliver in Agile, cross-functional teams, with effective communication skills and an ownership mindset.
- Soft Skills
- Ability to take ownership of ambiguous initiatives and drive them to completion.
- Effective communication skills to reach out for assistance, provide updates, and resolve blockers effectively.
- Willingness to learn unfamiliar tech stacks or parts of the codebase independently.
- Ability to follow existing patterns, processes, and standards without deviating unnecessarily.
- Tool Proficiency
- Familiarity with modern development tools such as Java IDEs (e.g., IntelliJ IDEA), Node.js editors (e.g., VS Code), database clients (e.g., pgAdmin, DataGrip, MongoDB Compass), and Kafka tooling including Confluent Kafka (Control Center, CLI, Schema Registry). Proficient with cloud platforms (e.g., AWS CLI, CloudWatch, S3), monitoring/observability tools (e.g., Datadog, Prometheus/Grafana), and team productivity platforms like JIRA and Confluence. Experience with AI-powered development tools (e.g., GitHub Copilot, Tabnine) .
- 7+ years of experience building and maintaining Java-based backend
- Experience developing backend systems using Node.js.
- Able to work in an agile environment with a focus on continuous integration.
- B.S., M.S., in software engineering, computer science, or related area or equivalent experience.
- Ability to regularly sit for extended periods of time.
- Perform repetitive motion type tasks.
- Able to be physically present for meetings, presentations, and trainings.
- Ability to work on-site in a team environment.
- Medical, dental, & vision insurance
- 401k + match
- Profit sharing
- Paid vacation and personal time
- Flex time
- 10 paid holidays
- Company performance bonus
- Holiday bonus
- Paid time to volunteer
- Training & career development opportunities