Collaborate with product managers, designers, and other stakeholders to understand the product vision, and requirements.
Provide technical insights, feasibility assessments, translate the requirements into technical specifications considering factors like performance, scalability, and maintainability.
Designing system architecture and implementing scalable APIs and Microservices
Demonstrates exceptional technical ability in actually writing software, hands-on keyboard, through proof of concepts and spikes with teams.
Partner across functions, building relationships that allow you to influence the strategy, plans and work to improve customer value through service, experience, availability, quality, and cost.
Be an active participant in reviewing, evaluating, and providing feedback on product designs and architectures with an engineering focus.
Guide and influence design decisions ensuring the product can be built effectively. Review and approve technical designs, architecture diagrams, and code to ensure alignment with specifications and best practices.
Create prototypes, proof of concepts, or minimum viable products to validate technical concepts and gather feedback. Facilitate communication between teams, addressing technical concerns and ensuring a shared understanding of requirements.
Develop and socialize new engineering principles and practices fit for purpose for the organization.
Evaluating and recommending new and emerging products and technologies.
Partnering with the engineering teams, design, research and end-users to deliver updates.
Facilitate in highly collaborative Full Stack eXtreme Programming (XP)
Pair Programming
Test Driven Development (TDD)
DevOps
Continuous Integration and Continuous Deployment (CI/CD)
Engage in Agile practices including but not limited to Stand-ups, backlog grooming, sprint demos and journey mapping.
Dependency and stakeholder management
Documentation: Create and maintain technical documentation, including specifications, architecture diagrams, and user manuals.
Continuous Improvement: Stay updated on industry trends, emerging technologies, and best practices related to product development and engineering. Identify opportunities for process improvements, automation, and optimization within the product development lifecycle.
Requirements
Bachelor's degree in Computer Science, Computer Engineering, Information Technology or related field.
7+ years of advanced professional experience on Software design/development and execution.
7+ years of work experience in Java 8 or above
5+ years of work experience in Spring Platform (Spring MVC, Spring Boot, Spring JDBC, Spring Cloud)
3+ years of work experience in Microservice architecture and SOAP or REST APIs
3+ years of Cloud Native Development experience on GCP Platform CloudRun, Cloud Functions, Containers via Podman.
Messaging/Streaming
GCP Pub/Sub, Kafka, GCP EventArc.
Persistence
Buckets, PostgreSQL Bigtable
Experience in Agile project involvement, Software Craftsmanship
Experience in Front end client development frameworks (React/Angular)
Experience in Code quality tools (42Crunch, SonarQube, CheckMarx, etc…)
CI/CD – Tekton or relative exposures on GIT hub, Jenkins, Maven, Gradle, etc