Design, develop, and maintain efficient, reusable, and reliable code using ASP.NET & .NET Core, and strong understanding of using Java technology for web development.
Ensure software performance, quality, and responsiveness and implementing 12 factor application principals and standards for horizontal scalability.
Work closely with product teams to convert end-user requirements into technical specifications and robust architectures.
Solid experience with relational databases such as Microsoft SQL Server (MS SQL) and IBM DB2 is required, with a preference for candidates knowledgeable in other database technologies such as NoSQL.
Keep abreast of the latest developments in web application and micro services technologies, integrating new technologies into our stack as appropriate.
Perform thorough testing and debugging of applications to ensure functionality, optimization, and scalability.
Recommend improvements to existing software programs as necessary and provide technical leadership and mentorship to junior developers.
Required Technical and Professional Expertise
Bachelor’s or Master’s degree in Computer Science, Information Technology, or a related field.
6 to 10 years of proven experience in ASP.NET, .NET Core, Ajax, Angular, React and Java web application development, including MVC and Web API.
Demonstrate experience of implementing API’s, microservices and architecting/developing applications for horizontal scaling, knowledgeable in load balancing, distributed systems, containers, Kubernetes and cloud services.
Demonstrate expertise in API protocols such as SOAP, REST, GraphQL, gRPC, RPC and Apache Thrift.
Extensive experience with relational databases, especially MS SQL and IBM DB2; familiarity with other database types is a plus.
Experience with front-end technologies (TypeScript, JavaScript, HTML5, CSS) is highly desirable.
Extensive experience with SCM tools, particularly Git and GitHub, and familiarity with branching strategies and workflows.
Demonstrated knowledge of DevOps practices, including but not limited to CI/CD pipelines, version control, automated testing, and configuration management.
Hands-on experience with automated testing frameworks like NUnit or xUnit and a commitment to maintaining high code quality through automated tests.
Excellent problem-solving capabilities and the ability to handle tight deadlines efficiently.
Effective communication skills and a strong ability to work collaboratively within a team.
Strong communication and teamwork skills, with the ability to lead and collaborate with various teams across the organization.
Preferred Technical and Professional Expertise
Understand OO basics like abstraction, encapsulation, inheritance, and polymorphism. Apply principles like SOLID.
Experience with virtualization and containerization technologies (Docker, Kubernetes).
Familiarity with cloud services (IBM Cloud, AWS, Azure, Google Cloud).
Knowledge of secure coding practices and application security principles.