The Software Architect will be responsible for driving the definition and design of the key market and technical aspects of our applications and frameworks by bringing his/her hands-on experience in developing and architecting a wide range of enterprise software applications. The Software Architect will engage with Product Owners to understand their challenges and needs in utilising our core product suite and in extending core features using our proprietary application toolkit. This will need to be balanced with industry best practices and the ability to drive and enforce such best practices across the organization so that we can create strong maintainable high-quality products that best solve our client’s needs. In addition to being responsive to clients’ requirements it will be important to stay proficient with the latest technologies and industry standards.
The Software Architect should be hands on with the engineering teams to lead and teach the team best practices and inject quality early into the development cycle. They monitor metrics within the applications to identify potential issues and concerns with performance, scalability, quality and security vulnerabilities. When areas of improvement are identified the Software Architect will need to work with the team to devise plans so that the teams can tactically address the issues in a timely and effective fashion.
Drive the architectural definition, requirements, design, delivery and adoption of our current and new offerings for local and international markets
Work with Product Management and Engineering to develop requirements for overall architecture and all subsystems including presentation, business logic, persistence, deployment, licensing, security, integration, extensibility, performance and success measurement
Proactively monitor and identify metrics that can effectively report the overall health of our systems and identify concerns before clients experience them
Identify and resolve bottleneck issues in all technical and functional areas in a timely manner
Oversight and responsibility for multiple applications on a few diverse frameworks solving a wide range of business problems
Prioritize development goals and best practices to market requirements, customer needs and product delivery schedule
Work with the business and product advisory boards to define and execute a technical roadmap
Coach and develop the engineering staff. Empower senior engineers and leads to own their designs and make them interoperate with the overall architectural design provided by the Software Architect
Interview engineering candidates and evaluating their technical proficiencies
Contribute to performance reviews of team members