- Company Name
- Markel International
- Job Title
- Software Engineer
- Job Description
-
**Job Title**
Software Engineer – .NET Developer
**Role Summary**
Design, develop, and maintain high‑quality .NET applications that power business‑process automation. Work closely with cross‑functional teams to translate requirements into scalable, cloud‑native solutions using Azure, Docker, and RabbitMQ, while ensuring code quality, test coverage, and adherence to agile delivery practices.
**Expectations**
- Deliver production‑ready, maintainable software on schedule.
- Apply design patterns and best practices to build scalable systems.
- Write unit tests achieving target coverage; document architectural decisions.
- Collaborate effectively in pair/peer reviews, estimates, and sprint planning.
- Communicate solution approaches clearly to engineering peers.
**Key Responsibilities**
- Analyse user/stakeholder requirements and assist in solution design.
- Develop robust, efficient C#/.NET Core modules, REST APIs, and Angular front‑ends.
- Create/optimize SQL database structures and queries.
- Implement Azure services, Docker containers, and RabbitMQ messaging.
- Integrate services using RESTful APIs and web service patterns.
- Participate in Agile ceremonies (stand‑ups, sprint reviews, retrospectives).
- Estimate effort, track progress, and ensure timely delivery.
- Troubleshoot, debug, and resolve application defects.
- Maintain code quality standards (style guides, code reviews).
- Contribute to DevOps pipelines (Azure Pipelines, Octopus Deploy) for CI/CD.
**Required Skills**
- Strong hands‑on experience with C# and .NET/.NET Core.
- Proficient in SQL Server (schema design, performance tuning).
- Experience building and consuming RESTful APIs.
- Familiarity with Angular 6+ for web interface development.
- Working knowledge of Azure cloud services (App Services, Azure Functions, etc.).
- Experience with Docker, container orchestration, and RabbitMQ message bus.
- Understanding of microservices architecture and design patterns.
- Ability to write unit tests and achieve quantifiable code coverage.
- Agile/Scrum development experience.
- DevOps skills: Azure Pipelines, Octopus Deploy, automated deployment.
- Strong analytical, problem‑solving, and communication skills.
**Required Education & Certifications**
- Bachelor’s degree in Computer Science, Software Engineering, or related discipline (or equivalent practical experience).
- Microsoft Azure Developer Associate or similar certification is advantageous but not mandatory.