About this role
Senior Software Engineers will have experience in developing solutions to complex problems and will be expected to provide expertise in development and testing best practices and methodologies. You will work on a collaborative agile development team, and in addition to your strong individual contributions, you will provide advice and assistance to more junior team members, as needed, to help in continually improving the productivity and quality of the team.
Role tasks and responsibilities:
• Strong knowledge of the following technologies: C#, .NET 4, REACT, nodeJS, MVC 4, Entity Framework, LINQ, nUnit / xUnit, Moq, AJAX, JavaScript, JQuery, HTML 5, CSS (Bootstrap).
• Excellent knowledge of authentication and identity protocols: OpenID Connect, SAML 2.0, OAuth 2.0.
• Experience in DevOps process (e.g., Scrum, Git Flow, CI/CD, deployment, etc.).
• Strong knowledge in Azure SQL Server development including relational database design, T-SQL queries, stored procedures, functions, and performance optimization.
• Understanding of cloud-based Microsoft development (Azure Web Apps, Azure Functions).
• Hands on experience in REST API implementation, Creating, maintaining and versioning API’s.
• Good understanding of software development methodologies, object-oriented programming, database design, and development.
• Advocate of design patterns such as MVC, Factory Pattern, dependency injection and unit testing.
• Mid-level command of the English language.
Requirements
Preferred (but not mandatory)
• Knowledge of the following technologies: Power App Canvas, Power Automate, Sharepoint Development, PowerBI, Dataverse.
• Exposure to Microsoft Azure DevOps.
• Experience working with Azure API Manager.
• Experience working with Azure Cosmos DB.
• Experience working with Azure Search (or ElasticSearch).
• Experience working with Azure Service Bus (or similar message queues broker).
• Experience working with Microsoft Azure Application Insights (or similar event logging technologies).
• Experience working with in-memory objects cache technologies (e.g. Redis, Memcached, etc.)
• Self-starter, pro-active and able to take the initiative and manage own time. Can do attitude, delivery driven, passionate to learn new technologies.
• Excellent communication skills, able to build and maintain credibility both internally with users and peers.
• Apply proven communication, analytical and problem-solving skills to help maximize the benefit of IT system investments.
• A strong academic background including a degree in a relevant field.
• Proven development skills with a positive and energetic style able to deliver results in a fast changing, demanding environment.
• Logical approach to problem solving.
• Excellent team player able to get on well with others.
• Creative thinker able to identify new opportunities for adding value to the business, quickly able to translate business requirements into practical application design.
• High personal standards and integrity.