senior Software Engineer
- Job Title: Senior Software Engineer
- Experience Level: Senior (5 to 8+ Years)
- Reporting Line: Business Applications Manager
- Role Summary: The Senior Software Engineer leads technical design, solution merger execution, greenfield application development, and cloud-native deployments. Working under the direction of the Business Applications Manager, the role balances hands-on C#/.NET 10 coding with technical leadership, database architecture, and mentoring.
Key Responsibilities
- Solution Consolidation & Architecture
- Lead the technical design, refactoring, and integration required to merge distinct software portfolios into a unified .NET 10 Core and Blazor architecture.
- Analyze functional workflows in existing applications (WebForms, Angular, REST APIs) and re-architect them into clean, maintainable Blazor Web Apps and microservices.
- Greenfield Development & New Requirements
- Drive end-to-end software development for incoming business feature requests, translating complex business processes into high-quality technical implementations.
- Design reusable UI components, backend microservices, and integration pipelines using C# and modern .NET patterns.
- Database & Data Layer Engineering
- Design, manage, and optimize multi-tenant and multi-schema databases across Oracle PL/SQL, PostgreSQL DBaaS (schema-per-country/company model), and SQL Server / Azure SQL.
- Manage query tuning, stored procedure development, indexing, and data integration across enterprise databases using Entity Framework Core, EF6, and Dapper.
- Integrations, Cloud & DevOps
- Design RESTful APIs, manage API Gateway policies via Gravitee, configure event-driven messaging using Azure Service Bus, and handle external systems integration (e.g., SMTP pipelines).
- Manage deployment pipelines and containerized configurations for Azure Kubernetes Service (AKS) and Azure Container Registry (ACR).
- Create and maintain automated CI/CD and Infrastructure-as-Code (IaC) workflows within GitLab.
- Secure application endpoints using Azure AD / Entra ID (OAuth2, OpenID Connect, JWT).
- Quality, Observability & Team Leadership
- Enforce software quality standards, conduct peer code reviews, and establish unit and integration testing suites (xUnit, NUnit).
- Configure application performance monitoring, log aggregation, and alerting dashboards using Grafana and Azure Application Insights.
- Provide L3 technical support for critical production incidents and perform root-cause analysis.
- Mentor the Junior Software Engineer and report regularly on delivery milestones to the Business Applications Manager.
Candidate Competency Profile
Mandatory Technical Skills
- Core Languages & Frameworks: C# (Advanced), .NET 8 / .NET 10 Core (Web API, Middleware, Background Services), Blazor (Server & WebAssembly), LINQ.
- Transitional Stack Understanding: Practical experience with C# 7.3+, ASP.NET Framework 4.8 (WebForms/Web API 2), and Angular to effectively extract, refactor, and merge business logic into Blazor.
- Data Access & Databases: Advanced SQL; expert-level proficiency in Oracle PL/SQL and PostgreSQL (query tuning, indexing, stored procedures, multi-tenant schema isolation). EF Core, EF6, Dapper, ADO.NET, ODP.NET.
- Architecture & Messaging: Microservices, RESTful API design (OpenAPI/Swagger), Event-Driven Architecture, Azure Service Bus, SOLID principles, Design Patterns.
- Cloud & DevOps: Azure Kubernetes Service (AKS), Azure Container Registry (ACR), Docker, Azure AD / Entra ID, GitLab CI/CD.
- Testing & Tools: xUnit/NUnit, Moq, Postman/Swagger, Visual Studio.
Strongly Preferred Skills
- Hands-on experience with SQL Server / Azure SQL.
- Infrastructure as Code (Terraform, Bicep, or Helm).
- API Gateway administration (Gravitee or equivalent).
- System monitoring and observability via Grafana.
Nice to Have
- Certifications: Azure Solutions Architect, Azure Developer Associate (AZ-204), or Certified Kubernetes Application Developer (CKAD).
- Domain-Driven Design (DDD) expertise.
Skills
- AKS
- Angular
- API
- Api Design
- API Gateway
- Azure
- Azure AD
- Azure Application Insights
- Azure Service Bus
- Bicep
- Blazor
- CI/CD
- Cloud
- Cloud Native
- C#
- Design Patterns
- DevOps
- Docker
- Domain-Driven Design (DDD)
- .NET
- Entra ID
- Event Driven Architecture
- GitLab
- Grafana
- Helm
- Infrastructure as Code
- Integration Testing
- JWT
- Kubernetes
- LINQ
- Microservices
- NUnit
- OAuth
- Observability
- OpenAPI
- OpenID
- Oracle
- PL/SQL
- PostgreSQL
- Postman
- REST
- Root Cause Analysis
- SMTP
- SQL
- SQL Server
- Swagger
- Terraform
- Visual Studio
- xUnit