This position will be part of the System Architecture team and be responsible for developing and documenting the high-level system architectures for our Security Solution products, working closely with the various development teams as the system solutions are developed. The role involves:
1. Working with the Senior System Architect and Product Managers to develop both the requirements and system architecture concepts for new features (this involves embedded devices, software development IDSs, PC tools, and production systems).
2. Communicating the concepts and working with the Software Development Team to produce estimates for new features and identifying / mitigating critical risks.
3. To own the architecture deliverables for a particular project, including identifying work items, the dependencies and reporting on the progress.
4. To elaborate the system design to enable Sub-system development: requirements are elaborated, critical interactions are identified, and key interfaces are specified.
5. To ensure the interfaces are adequately reviewed and communicated to both internal development teams and external partners.
6. To work with the main development team, understanding and addressing the architectural impacts of implementation issues while ensuring the architectural specifications are respected and updated in a controlled manner.
7. To assist the Senior System Architecture with the development of the longer term architecture strategy / roadmap.
This position will report directly to the Senior System Architect but will also be part of the project reporting into the relevant Software Project Leader.
Skills and Experience:
· 3 to 5 years current experience in a Software Systems Architecture role developing & documenting system architectures (particularly delivering systems using embedded software and external tools)
· Previous background experience in a SW development role
· Knowledge of Software Development tools for embedded systems (IDEs)
· Knowledge of microcontroller / microprocessor systems (Arm Cortex, etc), bare metal and RTOS-based systems
· Demonstrable experience of on-time delivery of quality systems showing drive and ambition
· The ability to take on varied responsibilities and to be flexible with work assignments
· Comfortable working in an Agile environment
· Knowledge of software systems security and cryptography
· Software development using C, Python, C#, JSON, XML
· Implementing solutions using Cloud functions
· Use of JIRA