- Company Name
- Iris Software Inc.
- Job Title
- Java Developer
- Job Description
-
**Job title:**
Java Developer
**Role Summary:**
Design, develop, and maintain scalable backend services using Java and Spring Boot. Build RESTful APIs and microservices, implement data persistence with relational and NoSQL databases, and integrate messaging systems. Ensure application security, reliability, and compliance. Write automated tests, containerize applications, and collaborate with DevOps for CI/CD and cloud deployments. Perform code reviews, troubleshoot issues, and provide occasional front‑end support with Angular. Document technical designs and communicate with stakeholders.
**Expectations:**
- Deliver clean, efficient code that meets performance and security standards.
- Follow best practices in architecture, testing, and documentation.
- Work collaboratively with cross‑functional teams, including DevOps, QA, and product owners.
- Adhere to project timelines and contribute to continuous improvement of development processes.
**Key Responsibilities:**
- Design and implement backend services with Java 17+ and Spring Boot.
- Develop and optimize RESTful APIs and microservices for scalability.
- Persist data using relational (e.g., PostgreSQL, MySQL) and NoSQL (e.g., MongoDB, Cassandra) databases.
- Integrate Kafka or RabbitMQ for event‑driven architecture.
- Apply security best practices (authentication, authorization, OWASP guidelines).
- Write unit, integration, and automated tests (JUnit, Mockito).
- Containerize applications with Docker and orchestrate with Kubernetes.
- Collaborate on CI/CD pipelines and cloud deployments (AWS, Azure, GCP).
- Conduct code reviews, debug production issues, and tune performance.
- Perform minor UI enhancements in Angular where required.
- Document API contracts, architecture decisions, and operational procedures.
**Required Skills:**
- Proficient in Java and Spring Boot framework.
- Experience designing RESTful APIs and microservice architecture.
- Strong knowledge of relational databases (SQL, ORM) and NoSQL databases.
- Familiarity with messaging platforms such as Kafka or RabbitMQ.
- Solid understanding of application security principles.
- Expertise in automated testing (JUnit, Mockito, TestNG).
- Containerization (Docker) and orchestration (Kubernetes) skills.
- Experience with CI/CD tools (Jenkins, GitLab CI, GitHub Actions).
- Cloud platform experience (AWS, Azure, or GCP).
- Basic front‑end skills with Angular (HTML, CSS, TypeScript).
- Strong troubleshooting, debugging, and performance tuning abilities.
- Excellent written and verbal communication.
**Required Education & Certifications:**
- Bachelor’s degree in Computer Science, Software Engineering, or related field (or equivalent experience).
- Professional certifications are a plus:
- Oracle Certified Professional – Java SE Programmer
- Spring Professional Certification
- Cloud certification (AWS Certified Developer – Associate, Azure Developer Associate, or GCP Professional Cloud Developer)
---