Our Client is looking for a Senior Software Architect for there software team to design and maintain the architecture to the state of the art in terms of coding and coding standards, security, high availability and scalability, documentation, testing and automation. You must be independent, a good communicator with strong leadership skills, be structured and organized, and be able to share knowledge across a multidisciplinary team in a high-tech environment. You must be an excellent architect and know the best coding practices in low-level and high-level programming languages, for firmware, mobile applications, and web front- and back-end.
Responsibilities
· Design and architecture the software at all levels: Firmware, mobile application and web code bases. Use platform-specific design patterns and solid principles.
· Evaluate development cost and propose budgets, skill sets, and staffing resources.
· Balance internal development with IP buy, 3rd party integration (buy or licensing).
· Conduct a strategic and technologic watch to identify development and business opportunities.
· Use best-in-class design patterns for security, code quality, and comply with data protection standards (GDPR, CCPA, PIPEDA).
· Review and document global and component architecture. Define a code review policy. Add missing documents.
· Contribute to achieving the final production quality pipeline: unit tests, integration tests, code analyzers (Sonar), automatic code documentation generation.
· Contribute to the deployment of global system integration testing: intrusion, performance.
· Contribute to final production setup including monitoring and cluster replication.
· Review and document cloud architecture key indicators: IAM policies, system scalability and availability, SPOF if existent, data replication and disaster recovery.
· Review existing protocols specifications et implementations: WiFi, BLE, gRPC, MQTT, UART etc
Skills and Qualifications
· Advanced degree in Computer Science or similar
· Experience with multiple technologies: embedded firmware, mobile, web, cloud
· 5+ years of experience as a Software Architect
· Experience with Linux environment, Yocto toolchain, Real time OS
· Experience on audio streaming, codec implementations
· Experience using TCP/IP, UDP and VoIP; any other protocols
· Experience with DSP platforms
· Experience of agile development process
Remote options available