- 11 Bishan Street 21, Singapore 573943
- Legal Entity: Robert Bosch Security Solutions Pte Ltd
Bosch Security Solutions has an extensive product portfolio which includes video surveillance, intrusion detection, fire detection, voice alarm, public announcement systems, professional audio and conferencing system as well as access control and management systems. It assists and supports its Singapore customer base with the designing, implementing and maintaining of projects.
We live in a time, where software penetrates most areas of our lives; consumers expect ever more features in ever faster update cycles. Successful companies like Bosch recognize this trend and align their business strategy accordingly, putting their focus e.g. on IoT and software. Experts in these areas are a key to our future success - the SW architect is a software expert.
We are looking for a motivated Software Architect for our Singapore office to provide new solutions, features re-factoring, product scaling & high availability for our software product develops from Singapore to fulfill worldwide customer needs.
This role requires someone with strong skills regarding architectural concepts and software quality.
- Interacts with many different stakeholders of product development and adjacent organizations.
- Identifies the relevant stakeholders, communicates with them and sometimes leads them.
- Identifies stakeholder requirements and influence on the SW, resolves discrepancies and balances the interests in terms of business goals.
- Understand business and market trends, Elicit and analyze requirements, Identify innovations and technologies, Design architecture, Make architectural decision, Evaluate architecture, Define design guidelines, Design verification strategy and criteria, Support integration and verification of the SW and/or SW-components, Drive code quality, SW QA and test strategies.
- Providing architectural design concepts, solutions as per gathered requirements and use cases.
- Involve in design and development (coding, unit testing, code review, bug fixing) together with team.
- Early forecast to reach the quality goals, e.g. based on fitness functions or models.
- Empowering and guiding the organization to a correct implementation of the SW architecture.
- Driving organizational development as required by the SW architecture.
- Use and develop state-of-the-art methods and technologies for SW architecture.
- Establishing and contributing to a professional network for sustainable competence development.
- Min. 10 years of working experience as full stack software developer and min. 5 years of backend working experience in modern C++ development for both Windows and Linux.
- Min. 5 years of working experience in SW architecture design & development.
- Strong Object Orientated design mindset, rich experience to practice design patterns and SOLID design principles to achieve high quality code in terms of portability, sustainability and extendibility.
- SW architecture patterns, design tactics, UML, SW architecture goals, SW development processes and tools, Architecture guidelines, Design and reuse strategies.
- Methods and tools of RE, functional vs non-functional requirements, requirement vs design, be able to communicate with customers and requirements managers.
- Processes and methods of system design, dependencies of SW with HW.
- Importance of configuration management for SW development, Variant management, Split/Merge strategies, Configuration Data Management.
- Impact of functional safety and of security on the system and SW development. Quality attributes reliability, availability, maintainability. Design principles for dependable systems and SW. Relevant standards.
- Test and Integration strategies, Test coverage, methods and tools of Testing, be able to communicate with testers.
- Quality criteria in SW product, QA strategies, define quality forecast of product, methods and tools of QA, be able to communicate with QA responsible.
- Video domain knowledge is a plus.
- Experience in Multithreaded and socket programming.
- Experience in RabbitMQ, MQTT or Kafka.
- Experience in Linux operating system.
- Experience in scaling and handling large amounts of data.
- In-depth knowledge of relational databases.
- Technical knowledge in distributed real-time systems and process automation.
- Structured working style with target, process and quality orientation approach.
- Good analytical and problem solving skills, self-motivated and proactive approach.
- Possess good communication, training, coaching skills and a strong team player.