We are seeking a talented and experienced Software Architect to join our team. The ideal candidate will have a strong background in software development and architecture, with a passion for designing innovative and scalable software solutions. As a Software Architect, you will work closely with our development teams and stakeholders to design and implement software systems that meet the needs of our business.
What You Will Do
- You will take the helm in designing and maintaining significant software products, transcending routine tasks to establish enduring, effective, and scalable solutions that enhance user experience and performance.
- Designing the overall architecture of software systems, including the architecture, components, and interfaces.
- Collaborating with stakeholders to understand requirements and translate them into technical solutions.
- Selecting the appropriate technologies, frameworks, and platforms for the software solution.
- Reviewing code and providing feedback to developers to ensure adherence to architectural guidelines and best practices.
- Identifying and addressing performance and other critical issues in software systems, including scalability and reliability.
- Identifying and mitigating risks related to software architecture and design.
- Creating and maintaining technical documentation, including architectural diagrams, design documents, and guidelines.
- Work in cross-functional agile teams to produce and release new applications, features, and enhancements to improve the user experience, applying the full understanding of software engineering discipline and industry best practices.
- Work closely with other development team members in major software projects by providing technical leadership and guidance to development teams throughout the software development lifecycle.
- Be a software architect mentor to the rest of the engineering team.
Required Qualifications
- Bachelor’s Degree in Computer Science/Software Engineering or related field plus 12+ years of experience OR an Advanced Degree in Computer Science/Software Engineering, or related field, plus at least 8 years of experience in leading software development and architecture with a proven track record.
- Deep understanding of design patterns, OOP/OOD, data structures, algorithms, IoT and cloud technologies (AWS, Docker, etc.).
- Thorough knowledge of software engineering practices, in particular related to best practices in software designing and architecturing for IoT safety system.
- Proven track record of transforming complex business needs into straightforward, effective software architecture and solutions, particularly for SaaS offerings.
- Solid understanding of Inter-process Communication, Microservices, and distributed infrastructure.
- Hands-on experience with SpringCloud, IoT, Kubernate, MQTT, Big Data and other backend technologies and an eagerness to learn new technologies as required.
- Comprehensive knowledge of cybersecurity principles.
- Comfortable translating design ideas into easy-to-understand documentation.
- Ability to work on multiple products and understand their integration within a distributed system
- Ability to multi task and to context switch between projects
Preferred Qualifications
- Familiar with Agile development method through working in a Agile team for years on software design and architecture duties.
- leadership experience with a demonstrated ability to manage a technical team.
- Proven ability to mentor junior/intermediate developers, leading by example and promoting a culture of excellence in all aspects of software development.
- Excellent communication skills with the ability to explain complex technical concepts to a diverse range of developers, regardless of experience level.