Design software applications according to the defined architecture and requirements (including design packages and subsystems).
Comprehend non- functional requirements such as performance, scalability, security, and maintainability; provide consultation to Managers in developing solutions that fulfill these needs for complex enterprise applications.
Collaborate with project team members to ensure all specifications are met.
Develop, implement, maintain, and debug software systems.
Prepare design and implementation documentation.
Lead development teams of 5 members or more, providing training and mentorship to team members.
Job Requirements:
Solid understanding of full- stack development: proficient in API design (REST/gRPC), experienced with at least one modern backend framework (.NET/Node/Python), and familiar with a frontend framework (e.g., React) to build internal dashboards.
Experience with containers and Kubernetes: Docker (Windows & Linux), AKS management, Helm/Kustomize, ingress setup, node pool configuration (taints/tolerations), and ACR integration.
Practical experience with Terraform (multi- environment setup, modules, state management, and CI/CD pipeline integration).
Proficient with Ansible (for both Windows & Linux environments, creating idempotent playbooks, and managing secrets).
Strong knowledge of Windows engineering in cloud environments (Windows Server, service configuration, packaging, MSI, MSBuild).
Hands- on experience with CI/CD setup for Windows (GitHub Actions/Azure DevOps, managing runners/agents, artifact and versioning strategy).
Experience with SQL Server in the cloud: backup/restore, HA/DR setup, migration strategies, and performance optimization.
Understanding of security and networking fundamentals: VNETs/VPCs, private endpoints, JIT access, IAM principles, least privilege, and key vault management.
Knowledge of observability tools: metrics, logs, traces, OpenTelemetry, and designing actionable dashboards and alerts.