- Create detailed technical, system, application or technology designs, in accordance with the overall architecture of the solution, in specialized fields such as: software engineering, technological infrastructure, information security, data management and, data or application integration.
- Design structured, innovative, high-performance and ideally reusable system components that integrate harmoniously into the company's ecosystem.
- Act as technical or systems contributor within the solution delivery team, overseeing complex development efforts to ensure the integrity of the design is maintained, and in some cases, build and implement the most complex components, while ensuring compliance with integration, design and development standards.
- Promote the reuse of existing components, participate in the selection of external software packages, services or components (e. g. cloud computing) and as a last resort, recommend in-house development when necessary.
- Work in collaboration with business and IT stakeholders to design components that comply with corporate directions, are efficient, viable and profitable.
- By constantly monitoring trends within their specialty, promote and participate in the evolution of cutting-edge methodologies, tools and services that conform to corporate standards and guidelines.
- Ensure that the technical and design documentation, which is necessary for the sustainability and support of the designed elements, is present, valid and kept up-to-date.
- Supervise internal resources, external service providers and independent third parties who participate in the design and technical implementation of the designed solutions.
- Act as the technical spokesperson on behalf of the delivery team in the context of internal working groups within the Information Technology Vice Presidency or various external groups for components under his/her responsibility.
-Bachelor's degree in computer science or any other relevant training at the same level.
-More than 8 years of experience in software design and development.
-Knowledge of Agile and DevOps principles and an ability to apply them in a teamwork context.
-Experience in object-oriented programming and SOLID principles.
-Experience with unit testing and test-driven development (TDD).
- Understanding of integration strategies using enterprise applications, data integration requirements, APIs and event-driven architectures.
- Understanding of design, architecture and integration patterns [e.g. Pub/Sub, CQRS, Event Sourcing, etc.].
-Knowledge of Behaviour-driven Development (BDD) & Domain-driven Design (DDD) practices.
-Knowledge of cloud, container, and virtualization technologies (e.g. Azure DevOps, Docker, …).
-Development languages, tools & technologies we use:
- ASP.NET & ASP.NET Core, C#, VB.NET, WCF, WPF
- Azure cloud services & tools
- MS-SQL, Azure SQL & Storage (MongoDB – Nice to have)
-Excellent communicator structured and accessible technical speaker, able to summarize efficiently and capable of working effectively in a team environment.
-Natural leader with the ability to influence and guide others, particularly in solution delivery teams and collaborators outside their specialty.
-Strong ability to identify and solve problems.