Role Overview
We are seeking an experienced Full‑Stack Developer to own and deliver high-quality, scalable, and maintainable web solutions.
The ideal person has deep expertise in both backend (.NET) and frontend (Angular) stacks, and is comfortable working in a microservices architecture, containerized environments, and with modern development practices.
Key Responsibilities
Backend / Server Side
- Design, build, and maintain RESTful APIs and microservices using
.NET 7/8 / ASP.NET Core - Architect and enforce clean, modular, and maintainable code (Clean Architecture / Hexagonal / Domain‑Driven Design)
- Containerize services using
Docker
, and optionally manage Kubernetes / container orchestration - Integrate with message brokers for event-driven or asynchronous workflows
- Use efficient data access techniques (Dapper, EF Core, raw ADO.NET when justified)
- Manage and optimize SQL Server
- Implement caching layers and other performance optimizations
- Ensure security best practices (authentication, authorization, encryption, input validation)
- Write unit tests, integration tests, and participate in test-driven development
- Participate in code reviews, CI/CD pipelines, and release management
Frontend / Client Side
- Develop responsive, performant single‑page applications using
Angular (v15+ or latest stable) - Structure applications with components, modules, services, lazy loading, and feature modules
- Use
RxJS / Observables / reactive programming
for asynchronous flows and state management - Manage application state (NgRx, Akita, or a suitable pattern)
- Use modern CSS (Flexbox, CSS Grid) and CSS preprocessors (SCSS / SASS)
- Ensure cross-browser compatibility, accessibility (a11y), responsive/mobile-first design
- Optimize client-side performance (lazy loading, change detection strategies, bundle size)
- Write frontend unit tests (Jasmine, Karma, or alternatives) and E2E tests (Protractor, Cypress)
- Collaborate with UI/UX designers to translate visual designs into functional UI
Required Skills & Experience
Technical Proficiencies
- .NET / C#
: Strong experience with ASP.NET Core, Web API, middleware, dependency injection - Angular / TypeScript
: Strong skills in recent Angular versions, CLI, modules, routing, lazy loading - JavaScript / ECMAScript 2015+
: Proficiency in modern JS features, async/await, Promises - HTML5 / CSS3 / SCSS
: Semantic markup, responsive layouts, grid/flexbox mastery - Databases
: Good command of both SQL (MSSQL) and NoSQL (e.g. MongoDB, Cosmos DB) - Messaging / Eventing
: Experience in Kafka, RabbitMQ or similar event-driven systems - Caching / Performance
: Practical experience with Redis or equivalent caching solutions - Architecture & Patterns
: Clean Architecture, SOLID principles, design patterns - Containerization
: Docker (and optionally Kubernetes) for dev/test/production environments - Testing / Quality
: Unit / integration testing, code reviews, static analysis, linters - CI/CD & DevOps
: Familiarity with pipelines (GitHub Actions, Azure DevOps, GitLab CI, etc.) - Version Control
: Strong command of Git workflows and branching strategies
Soft Skills & Behavioral Expectations
- Proven ability to lead technical design, mentor junior developers, and drive best practices
- Excellent problem-solving, debugging, and troubleshooting skills
- Clear and effective communication—able to translate complex technical topics to non-technical stakeholders
- Adaptability to evolving requirements, continuous learning mindset
- Strong time management, task prioritization, and ability to juggle multiple features
Nice-to-Have / Preferred Extras
- UI/UX design sensibilities or collaboration experience with designers
- Experience with API Gateway (Ocelot, Azure API Management)
- Experience with logging and monitoring stacks (ELK, Prometheus, Grafana)
- Experience in cloud environments (Azure, AWS, GCP)
- Familiarity with GraphQL, gRPC, or WebSockets / real-time communication
- Exposure to micro-frontends or modular architecture
Experience Level & Expectations
- Typically
10+ years
of professional development experience (or equivalent) - Demonstrated track record of delivering production-grade systems
- Experience working in agile / Scrum teams
- Ownership mindset: able to take end-to-end responsibility for features
Languages
- Arabic (Native)
- English (Professional)