Responsibilities:
▪ Spearhead the design and development of scalable, efficient solutions using the .NET Core framework.
▪ Translate intricate business requirements into coherent technical specifications and architectural designs.
▪ Maintain comprehensive technical documentation, including diagrams, architectural blueprints, and flowcharts.
▪ Design, develop, and maintain .Net Core based web applications and microservices.
▪ Lead, inspire, and mentor a team of architects and solution designers, fostering an environment of technical growth and excellence. ▪ Establish, promote, and ensure adherence to coding standards, best practices, and architectural principles.
▪ Advocate for state-of-the-art software engineering techniques and tools.
▪ Collaborate closely with business leaders, project managers, and other key stakeholders to ensure software solutions are in alignment with business objectives.
▪ Effectively convey intricate technical details to non-technical stakeholders, ensuring transparency and alignment.
▪ Oversee rigorous code review processes and champion adherence to best practices.
▪ Promote and implement automated testing, continuous integration, and continuous delivery methodologies.
▪ Remain updated on the latest developments within .NET Core and pertinent technologies.
▪ Drive innovation by experimenting with and integrating emergent technologies and tools.
▪ Lead efforts in profiling, analyzing, and optimizing applications to ensure peak performance.
▪ Architect systems with scalability, resilience, and reliability as core principles.
▪ Oversee troubleshooting and problem-solving for intricate technical challenges.
▪ Ensure prompt and effective resolution with minimal business disruption.
▪ Contribute to project estimation, scoping, and planning.
▪ Ensure projects are delivered on time while upholding quality standards.
▪ Collaborate with the team to identify and implement solutions to technical and design problems.
▪ Collaborate with stakeholders to gather requirements and provide technical advice and support.
▪ Work in an Agile/Scrum environment, including attending daily standups, sprint planning, and retrospectives.
Collaborate with cross-functional teams to identify and prioritize project requirements.
▪ Design, develop and maintain APIs to enable seamless communication between microservices.
▪ Design, develop and maintain databases, ensuring data integrity and security.
▪ Design, implement and manage Docker-based microservice environments.
▪ Develop automated tests to ensure code quality and stability.
▪ Collaborate with DevOps team to build and maintain a CI/CD pipeline. ▪
Stay up to date with emerging trends and technologies in web development and integrate them into the development process.
▪ Develop and maintain technical documentation, including Architectural Blueprints, high-level design (HLD), low-level design (LLD), and entity relationship diagrams (ERD) to ensure clarity and consistency.
Education
1. B.S. in Computer Science or any related field.
Experience
1) A minimum of 7 years of solid experience with .NET Core and its ecosystem, including related Microsoft technologies like ASP.NET, Entity Framework, Web API, microservices, etc.
Technical Skills:
▪ Profound understanding of architectural patterns, software design principles, and best practices.
▪ Extensive technical knowledge of .Net Core and C#, including Restful APIs and SOAP.
▪ Hands-on experience with RESTful APIs, SOAP, WSDL, HTTP, web security, JWT, tokens, SSO, & OAuth.
▪ Experience with designing and implementing Microservices-based systems.
▪ Deep expertise in ASP.NET Core, Web APIs, SignalR, gRPC, and high-volume data processing
▪ Solid experience with ORM frameworks such as Entity Framework Core
▪ Experience with Docker containerization and deployment.
▪ Strong understanding of database design and development using MSSQL, MySQL, Oracle, and NoSQL DBs.
▪ Experience with Git version control and Git workflows.
▪ Experience with Single Sign-On (SSO) implementation using protocols such as SAML or OpenID Connect (OIDC)
▪ Knowledge of OAuth 2.0 and its implementation in a web application context
▪ Familiarity with MVC, SPA, MPA and their architecture
▪ Knowledge of design patterns, cloud infrastructure, microservices, APIs and object-oriented programming
▪ Understanding of security protocols and methods, such as HTTPS, SSL/TLS, CORS, CSRF, and XSS
▪ Familiarity with authentication and authorization mechanisms such as JWT, session-based authentication, and role-based access control (RBAC)
▪ Proficient in asynchronous messaging technologies using Kafka and RabbitMQ or similar technologies.
▪ Experienced in employing caching solutions like Redis to enhance system performance.
▪ Familiarity with front-end development tools such as HTML, CSS, and JavaScript, and experience with Angular or similar technology.
▪ Experience in implementing automated tests using Selenium, MSTest, NUnit, xUnit.net or other testing frameworks.
▪ Proficiency in using SonarQube or similar tools for code quality inspection and vulnerability detection.
▪ Familiarity with DevOps tools such as Jenkins, Travis CI, or GitLab CI.
▪ Collaborate with DevOps to streamline deployment pipelines, advocating for best practices in CI/CD.
▪ Strong problem-solving skills and attention to detail. ▪ Strong communication and collaboration skills with the ability to effectively work with cross-functional teams.
▪ Strong analytical and critical thinking skills to identify and solve complex problems