Seeking a Senior Software Architect - Java, React, Spring, Azure who has solid experience owning the Architecture designs needed to run multiple products/projects in a Microservices based architecture. This is a direct hire/fulltime position located around the Perimeter Mall area in Atlanta, GA. (Hybrid - 2 days in the office). In this role, you will be responsible for the documentation, communication, and collaboration needed to ensure all stakeholders understand the architecture as well as being involved in strategic decision-making involving impacts that expand across multiple platforms/components. With that said, you will also be involved in proof of concepts to demonstrate the concepts of the architecture to the teams responsible for implementing it. Communication at all levels of the architecture, including components, and their interactions, service layers, and security, instrumentations, and API usage is a key part of this role.
What You’ll Do
As a Senior Software Architect, you will collaborate with fellow software architects, as well as software engineers, to establish common development patterns and practices, unit testing practices, frameworks, tech stack approaches, and maximize component reuse. The Senior Software Architect will be involved in strategic decision-making that spans multiple components or products. You will also use your communication and soft skills to collaborate with senior business and technology leaders to represent the software architecture team in a variety of discovery and implementation efforts. You will use your technical skills in Azure cloud, API design, asynchronous event driven architecture, and GitOps, to drive the organization’s technology landscape forward and position us for a future of exponential growth.
Must haves: Heavy Java, Azure, Spring, React, Rest, API Gateway Products
Responsibilities
- Serve as solution owner of all technology implementations in your respective product areas.
- Assisting in the mentorship and growth of software engineers.
- Support engineering teams by building proof-of-concept work/code snippets/examples to demonstrate usability of new technology features.
- Analyze application specifications and technology approaches to ensure business requirements are met and are scalable for future product releases.
- Work with Scrum team and management to recommend future application solutions.
- Produce and maintain conceptual design documents and detailed specifications for large-scale projects and contribute to our architectural center of excellence. This includes high-level design flows, sequence diagrams, interface diagrams, API specifications, and JSON message schemas for interoperability between systems.
- Demonstrate fluency in technical aspects of a suite of specialized products and business applications.
- Collaborate with engineers and testers to ensure appropriate front-end and back-end unit and automated testing exists for your respective product areas.
- Collaborate with teams to diagnose and resolve complex defects identified through testing.
- Define and evangelize modern best practices to improve maintainability, reliability, and performance of the engineered solutions.
- Serve as a technical voice of IT to the broader Company's organization, when necessary.
What You’ll Need to Succeed
- Experience working in a Scrum / Agile environment (preferred).
- Experience with one or more NoSQL databases like Cassandra, MongoDB (preferred)
- Experience and skills with RDBMS (PostgreSQL, MySQL, SQL Server) concepts, logical and physical design, and administration.
- Experience and understanding of n-tier technical architectures (web servers, application servers, database servers) in a high performance and highly available deployment.
- Experience with backend technologies like Java, Spring / Spring Boot frameworks, REST, and API design.
- Experience with frontend technologies like React and/or Angular (preferred)
- Experience working with API gateway products, such as Apigee, Kong, Azure APIM, and Zuplo (preferred).
- Experience using ESBs and message brokers such as Solace, Camel, RabbitMQ, ActiveMQ, Kafka (Kafka experience preferred).
- Experience with high availability, fault-tolerance, load balancing and disaster recovery designs and techniques.
- Experience with application and integration architecture design concepts and techniques.
- Strong decision-making skills, and an understanding of where projects fit into the overall architecture strategy.
- Knowledge of microservices architecture and domain driven design
- Strong knowledge of GitOps concepts, DevOps methodologies, CI/CD pipelines (Bitbucket and/or Azure DevOps Pipelines preferred) and utilizing declarative Infrastructure-as-Code techniques (Terraform experience is preferred).
- Experience with containerized deployment technologies (Docker), Kubernetes, and Containers-as-a-Service, such as Azure Container Apps (preferred).
- Proven ability to interact effectively with people in all levels of the organization (cross-functional, vendor resources, and executive management).
- Strong organization skills with the ability to work on multiple projects and/or assignments simultaneously.