Job Summary
The Java Full-Stack Developer with Expertise in GCP is responsible for designing, developing, testing, implementing, and maintaining complex, scalable applications based on business and client requirements. The role involves building backend services using Java and Spring Boot, developing frontend applications using Angular, and leveraging Google Cloud Platform (GCP) to deliver robust and scalable solutions. The developer will participate in the full systems development lifecycle, including requirements analysis, technical design, coding, testing, integration, deployment, and maintenance. The position also requires expertise in microservices architecture, NoSQL databases, messaging systems, application integration, container orchestration, and CI/CD practices. The developer will collaborate with clients and cross-functional teams to support system enhancements, resolve technical issues, maintain application documentation, and evaluate emerging technologies.
Key Responsibilities
• Contribute to information systems projects by conducting systems and requirements analyses and identifying project action items.
• Analyze business and technical requirements and participate in defining and developing technical specifications.
• Design, develop, code, test, troubleshoot, and document moderate to highly complex applications to ensure optimal performance and compliance.
• Build complex, scalable applications using Java and Spring Boot, including advanced microservices architectures.
• Develop and maintain frontend applications using Angular.
• Design and implement application solutions leveraging Google Cloud Platform (GCP).
• Participate in component architecture and data architecture design, technology planning, and testing for application development initiatives.
• Design, develop, and optimize database-intensive applications using NoSQL databases, particularly Couchbase.
• Design and implement robust messaging and integration solutions using Kafka, AMQ, WMQ, and Apache Camel.
• Develop routing and transformation logic using Apache Camel to support application integration requirements.
• Implement and maintain containerized applications using OpenShift or Kubernetes.
• Develop and maintain CI/CD pipelines, container orchestration processes, and deployment strategies.
• Define and produce integration builds to support application development and system integration.
• Monitor system performance and integrity and administer maintenance and support procedures.
• Develop and maintain accurate and consistent system and technical documentation.
• Collaborate with clients and cross-functional teams to plan future system enhancements and ensure effective communication and delivery of project objectives.
• Provide technical input and support for application development, integration, maintenance, and project planning.
• Apply disaster recovery knowledge, information analysis, information systems knowledge, internal systems knowledge, and technical problem-solving practices.
• Identify and resolve technical problems using structured analytical approaches.
• Monitor emerging technologies and products to identify opportunities for improving application solutions.
• Communicate technical designs and recommendations clearly to technical and non-technical stakeholders.
Required Qualifications
• 6+ years of experience with Java, including developing complex, scalable applications.
• 6+ years of experience with Spring Boot, including designing and implementing advanced microservices architectures.
• 3+ years of experience with Angular.
• 3+ years of experience with Google Cloud Platform (GCP).
• 3+ years of experience with NoSQL databases, particularly Couchbase, including database design, development, and optimization.
• 3+ years of experience with Kafka, AMQ, and WMQ, including designing and implementing robust messaging systems.
• 2+ years of experience with Apache Camel, including developing complex routing and transformation logic.
• 2+ years of experience with OpenShift or Kubernetes, including CI/CD pipelines, container orchestration, and deployment strategies.
• Knowledge of full systems development lifecycle activities, including analysis, technical requirements, design, coding, testing, implementation, and maintenance.
• Experience participating in application architecture, data architecture, technology planning, and application integration initiatives.
• Ability to analyze technical requirements, develop application solutions, troubleshoot issues, and maintain system documentation.
• Strong technical problem-solving, analytical, and communication skills.
• Ability to communicate design ideas and technical information effectively to technical and non-technical stakeholders.
• Ability to collaborate with team members and contribute to shared project objectives.
Preferred Qualifications
• Demonstrated commitment to continuous learning and improving technical and non-technical skills.
• Strong teamwork skills, with a willingness to support colleagues and contribute to team success.
• Ability to communicate complex technical concepts clearly while prioritizing relevant information.
• Interest in evaluating emerging technologies and applying them to improve application development and integration.