Software Architect
Skills
RDBMSSoftware ArchitectureSoftware DevelopmentData ArchitectureDesign PatternsDomain-Driven DesignHypertext Transfer Protocol
What the job involves
The main requirements, responsibilities and hiring steps.
Requirements
- Proven experience as a Software Architect or similar role
- Strong background in .NET C# software development
- Experience in scalable distributed systems
- Knowledge of RESTful HTTP API design, messaging application architecture, microservices, SOA, enterprise integration patterns, security, IPC mechanisms, performance, and cloud deployment
- Enterprise .NET development experience (8+ years) and knowledge of .NET eco-system
- Database design and ORMs
- OO design and modelling of complex domains
- Knowledge of Domain Driven Design
- Familiarity with Agile development practices including Clean Code, TDD, Unit Testing, Continuous Integration, Continuous Delivery
Nice to have
- Experience with alternative languages such as Python, node.js, Ruby
- AI/Machine Learning/Computer Vision knowledge
- Experience with alternative RDBMS and NoSQL data stores
- Containerisation and orchestration experience
- Familiarity with cloud-based technologies and microservices architecture
Day to day
- Design and implement the overall structure of software systems
- Collaborate with cross-functional teams to deliver high-quality software solutions
- Stay updated with emerging technologies and recommend innovative solutions to enhance systems
