.STRYPES is looking for new colleagues to join our team as a Software Architect.We are a Dutch-Portuguese software development company, home-based in Lisbon and Porto. We focus on the development of a wide range of innovative embedded software solutions, including embedded Linux, real-time operating systems, and bare-metal applications, while also covering operating systems, board support packages, and device driver development. To cover such a wide variety of challenging software development disciplines, we believe that exceptional and highly empowered employees are essential.We work within a hybrid model, with offices based in Lisbon and Porto. We are happy to hire candidates from any city in Portugal, who would be available to come into the office regularly.If this description sounds familiar to you, STRYPES may be a fitting career move for you!Your daily responsibilities include:Define the technical software road map in conjunction with the overall product and system road map; Lead the team technically and be responsible for the definition and deployment of the architecture through the full life cycle of software for complex modules and machines; Work with a code base of C, C++, Python, or C#; Ensure the code base delivers reliably for multiple systems and multiple users; Cooperate closely with architects and engineers from other disciplines and strategic customers in a multidisciplinary team; Work in an agile fashion in scrum teams; Take up new challenges and explore new tools and techniques.Essential qualifications, skills, and experience:Master or PhD degree in Software Engineering, Computer Sciences, Mathematics or Engineering and a background in software development in a technical environment; At least five yearsof experience in defining, designing and developing complex embedded software (machine control) systems; Ability to draw up a software architecture and software specifications; Knowledge of C/C++ (STL/Boost libraries is an advantage), C#/.Net and/or Python on various operating systems such as Linux, Solaris and QNX; Knowledge about processors such as ARM; Experience with Agile/Scrum (SAFe is an advantage); Preferably bringingexperience with modelling, object-oriented analysis and design, UML and design patterns; Strong personal communicator with excellent communication skills in English; Academic mindset with a pragmatic approach, critical thinker and problem solver; Motivated individual with the ability to show entrepreneurship and to think outside the box; Ability to work in an international multicultural setting; Availability to travel to The Netherlands.Our recruitment process consists of three distinct steps, each designed to assess different aspects of a candidate's qualifications, skills, and alignment with the organization:Stage 1 - 30-minute conversation with recruiter.Stage 2 - 1-hour technical conversation with members of the engineering team.Stage 3 - 1-hour conversation with Group Lead or CEO