Job Description
Roles and Responsibilities: -
Defining and taking ownership for all aspects of technology solutions to align with business program priorities
Owning the quality of technology deliverables for given products/programs
Mentoring and growing technology team members
Directly supporting agile development teams in defining and ensuring compliance with architecture/design standards and guidelines
Working to continuously improve technology craft
patterns, practices, tools and methods
Continuing to - sharpen the blade- of technology patterns and techniques based on understanding changing trends
Key Attributes: -
Strong software architecture skills and knowledge, with a proven track record in delivering complex software systems
Focus on contemporary architecture patterns and practice (e.g. experience with micro-services, REST, responsive design, SQL and NO-SQL, front-end technologies, DevOps)
Understanding of the full end-to-end technology stack (i.e. front-end client to database, and application to infrastructure)
Ability to communicate effectively and to maintain meaningful relationships with business and technology stakeholders
Focus on being sufficiently hands-on, pragmatic and willing to step in to code reviews and implementation design discussions - Ability to think strategically and deliver tactically - be a big picture thinker with the ability to jump in and help deliver on the vision
Be able to inspire, lead and mentor
Solid understanding of agile methods, tools, and experience in an agile environment
Good to have
Java (v8+), Spring Framework (v4+), Git & CI/CD process, Networking Protocols. Desired: JavaScript, Angular (v8+), Node.js, Python, Shell scripting, Unix, Linux, Windows, ELK Stack,
Kafka, JMS, message queuing, Packer, Terraform, BDD and TDD
Qualifications:
Bachelors Degree/ Masters - Computer Science or Management Information Systems (or equivalent work experience)
Min 7 years of IT work experience with demonstrated increasing responsibilities
Superior organizational and communication skills
Ability to understand technological complexity and articulate it into simple solutions