Senior Software Lead
- Full-time
Job Description
Key Responsibilities
- Strong ability to provide written and/or verbal explanations on design and technical/functional solutions.
- Contribute to the architecture, design, development, and maintenance of Web and Desktop applications using the C# language and the Microsoft .NET framework.
- Write clean, scalable code using .NET programming languages.
- Test and deploy applications and systems.
- Ensure the best possible performance, quality and responsiveness of applications.
- Maintain clear communication with all stakeholders throughout project lifecycles.
- Involved on multiple client projects, sometimes in parallel.
- Integrate with middleware and backend services and enterprise systems.
- Timely delivery and execution of assigned work.
- Collaborate with project teams made up of people with diverse and complementary skills.
- Team player to ensure successful delivery of solutions.
- Develop responsive web front ends with the latest technology and security.
- Integrate with a variety of Azure Hosted Services.
- Develop and maintain RESTful API services with token-based authentication.
Qualifications
Qualifications & Experience
- Bachelor’s Degree or equivalent is required in Computer Science or Information Systems or Computer Engineering.
- 10+ years of Experience with .NET Core.
- Experience with Microsoft SQL databases.
- Experience with Razer / JavaScript / Jquery.
- Extensive knowledge and experience with integration with other systems and cloud structures.
- Experience with creating/maintaining and consuming RESTful APIs.
- Must have good knowledge of software programming concepts such as Object-Oriented Programming, Relational database design and agile methodology.
- Experience with Azure DevOps, CI/CD.
- Experience Angular / Vue.JS / React.
Preferred Skills
- Strong knowledge of .NET web framework.
- Proficient in C# and/or .NET Core/Framework with a good knowledge of their ecosystems.
- Strong understanding of object-oriented programming.
- Familiar with various design and architectural patterns.
- Understanding of fundamental design principles for building a scalable application.
- Experience creating database schemas that represent and support business processes.
- Proficient understanding of code versioning tools such as SVN and GIT.
- Ability to learn quickly and adapt rapidly to the latest technologies and best practices.
- Strong problem solving and troubleshooting skills with the ability to exercise mature judgment.
- Possess excellent communication and presentation skills and work in a dynamic environment with a rapidly changing environment.
- Experience working with both Agile and Waterfall application development.
- Experience with integrating with Azure services.