This hands-on role requires a highly motivated and experienced application architect with pride of ownership reflected through clean architecture design, code quality and disciplined software development approach. The candidate will be expected to do both application programming as well as application design and architecture.
Roles and Responsibilities
- Works with architects, project managers and project sponsors to provide enterprise applications to specific business problems and issues across many domains
- Provide technical and architectural leadership in developing and transforming Client’s global online products cutting across technologies and deployment models.
- Create product and technology application designs aligned with target state architectural vision and modernization efforts to meet business goals.
- Provide architectural guidance and governance to development teams to build scalable and maintainable applications, adhere to Enterprise Architecture technology roadmaps, and minimize technical debt
- Participate in product development activities such as architecture, design, prototyping, implementation and review. Takes full responsibility for the balance between functional requirements, service quality and systems management requirements for Client’s online products
- Manages the portfolio of applications’ target design, policies and standards, working proactively to maintain a stable, viable architecture and ensure consistency of design across projects
- Evaluates design approaches, makes architectural recommendations, and implements improvements. Identifies technology gaps and issues in the current systems and develops remediation strategies and roadmaps to align to target state architecture
- Leads application system design review activities (as part of Architectural Review Board) to ensure the application architecture is scalable and consistent with overall architectural vision and design principles. Drives adoption of and adherence to relevant policies, standards, strategies and architectures.
- Reviews current changes to and proposed new applications for compliance with obligations (including legislation, regulatory, contractual and agreed standards/policies) and adherence to overall EA strategy. Prepares and presents project documentation for the architecture review board (ARB).
- Develop design patterns and/or reusable software components that enable software teams to develop high-quality software applications.
- Lead and coordinate the application, data and technical discussions relative to future architecture direction across different business unit owners or product portfolios.
- Actively maintains recognized expert level knowledge in Object Oriented languages (Java/J2EE) and cloud hosting vendor (AWS) infrastructure components
- Takes responsibility for understanding client requirements, collecting data, delivering analysis and problem resolution
- Develop and define software technology roadmaps in collaboration with senior engineering, product management, peer architecture groups, and service leaders.
- Communicate technology strategy in a simple, effective and understandable manner to business leaders and engineers.
- Mentor and develop software engineers and help them grow technically on emerging technology trends as well as domain
- Bachelor’s degree required in Computer Science, Information Systems, or related field.
- 10+ years hands-on experience in Object Oriented software design and development
- 7+ years hands-on experience in Java/J2EE software development. Expert knowledge and experience in Java/J2EE microservices and web services.
- 2+ years hands-on experience on AWS platform. Experience in AWS practices, building and operating web applications using services such as AWS EKS, Lambda, EMR, CloudFormation and MSK, and a well-grounded knowledge of engineering and continuous delivery practices
Knowledge, Skills and Abilities
- Strong experience in designing and developing Application Architectures in a hybrid cloud environment involving Java/J2EE and web services hosted on AWS
- Strong experience participating in the software development lifecycle leveraging the latest methodologies and industry applicable technologies, fluent in Java/J2EE and AWS components
- Strong ability to design, code and debug Java applications on AWS
- Strong API and RESTful web services development experience, JSON, XML
- Experience in design of service-oriented architectures (SOA) including microservices and self-contained systems
- Ability to work in a collaborative and fast paced agile environment to evangelize best practices and clean architectures
- Ability to communicate technical concepts to technical and non-technical audiences
- Proven record of delivering technology solutions within agreed upon time frames for high-profile web applications
- Skilled communicator and negotiator with exceptional written, verbal, presentation, and interpersonal skills and ability to communicate with all level of staff to determine system requirements, processes and data flows.
- 2+ years of agile software development frameworks (e.g. Scrum, Kanban)
- 2+ years of mobile app development
- 1+ years of enterprise architectural frameworks (e.g. TOGAF, FEA, Zachman)
Knowledge, Skills and Abilities (KSA’s):
- Experience in developing Microservices architecture
- Experience in Architecture Refactoring and Modernization
- Experience in Mobile App development and architecture
- Experience or knowledge of Continuous Integration and Continuous Delivery
- Knowledge of low-code platforms such as Pega Systems
- Knowledge of enterprise architecture repositories such as Bizz Design or ArchiMate
- Knowledge of ITIL, TOGAF is a plus