Software Architect

Posted 51ds ago

Employment Information

Education
Salary
Experience
Job Type

Report this job

Job expired or something wrong with this job?

Job Description

Software Architect designing and implementing software solutions for digital transformation consulting. Working with C# in a dynamic and innovative team at Verity.

Responsibilities:

  • Choose appropriate architectural patterns (microservices, message queues, etc.).
  • Justify the choice of patterns with respect to the requirements.
  • Consider trade-offs between simplicity and flexibility.
  • Define clear strategies to handle increased load (scalability).
  • Implement failure-recovery mechanisms (resilience).
  • Ensure the release-control service remains available if the daily consolidation fails.
  • Define how components communicate (protocols, message formats, etc.).
  • Select appropriate integration tools and define their responsibilities.
  • Implement authentication, authorization, and encryption (security).
  • Implement protective mechanisms against attacks (WAF, etc.).
  • Analyze the quality of decomposing the system into smaller, manageable parts.
  • Abstract and segregate responsibilities across layers.
  • Ensure adherence to development best practices (SOLID, Clean Code, etc.).
  • Write readable, well-organized, and maintainable code.
  • Use the C# language efficiently.
  • Implement tests with good coverage, quality, and relevance.
  • Meet mandatory technical requirements.
  • Satisfy business requirements.
  • Document the architecture clearly and concisely.
  • Create diagrams that represent the architecture.
  • Justify architectural decisions.
  • Define data flows.
  • Write clear, detailed instructions on how the application works and how to run it locally (README).
  • Centralize documentation.
  • Describe possible system improvements or extensions.
  • Demonstrate long-term vision and planning capability.
  • Discuss trade-offs and challenges encountered during development.

Requirements:

  • Proven experience in designing and implementing scalable, resilient, and secure software architectures.
  • Hands-on experience developing software using C#.
  • Experience applying software design principles (SOLID, Clean Code, etc.).
  • Experience implementing automated tests (unit, integration, etc.).
  • Experience with architectural patterns (microservices, message queues, etc.).
  • Deep knowledge of C# and the .NET ecosystem.
  • Solid knowledge of software design patterns.
  • Understanding of software architecture principles (microservices, message queues, etc.).
  • Knowledge of agile development practices (Scrum, Kanban).
  • Knowledge of information security (authentication, authorization, encryption).
  • Experience with code versioning tools (Git).
  • Familiarity with testing methodologies (TDD, BDD).
  • Familiarity with Docker and Docker Compose.
  • Knowledge of CI/CD (Continuous Integration / Continuous Delivery).
  • Knowledge of IaC (Infrastructure as Code).

Benefits:

  • Meal allowance
  • Food allowance
  • Work-from-home allowance
  • Health insurance
  • Dental insurance
  • Life insurance
  • Discount partnerships
  • Agreements with merchants and educational institutions
  • Recurring agile training
  • Alura licenses
  • Intervalor Verity
  • #VerityWithYou
  • Viva Engage