As a Senior Software Engineer, you will build high-quality, innovative, and fully performing software that complies with coding standards and technical design. You define system functionality and work on both back-end .NET and front-end React using C# and JavaScript programming languages.
You are familiar with the software development life cycle (SDLC) from preliminary planning, defining requirements, designing, and prototyping, building, documenting, testing, deploying, to finally maintaining the software. Finally, you contribute thoughts positively within the Agile development team and demonstrate an enthusiastic ‘can-do’ attitude.
Responsibilities
Implement new features across the Ideagen Products using .NET and open-source technologies.
Work closely with Development Managers and Team Leaders, and other Software Engineers to build well architected cloud hosted and on-premises enterprise solutions.
Work collaboratively with Product Managers, Technical Product Owners, Front-end Development Engineers, Test Engineers, and Infrastructure Engineers to ensure features are delivered to a high standard.
Collaborate with the Product Design Team to create an optimal user experience.
Work across the Software Development Lifecycle ensuring that our products are delivered to a published roadmap within planned release cycles.
Work within an Agile Development Team using e.g., Scrum framework.
Contribute towards the defining and developing a Sprint backlog to achieve the goals set out by our Product team.
Diagnose, troubleshoot, and fix software defects.
Provide unit tests to support and validate for any development work undertaken.
Contribute to the Development Team’s working practices and technology decisions.
Create necessary documentation relating to work produced.
Mentor and coach other development team members to help grow their technical skillsets.
Skills And Experience
At least 4 years’ experience in a Software Development role is preferred
Proven ability to deliver technical design within an enterprise application using .Net Core, C#, React or Angular, TypeScript
Demonstrable experience implementing .NET programming best practices.
Web application front-end development experience in HTML, CSS, and JavaScript. Knowledge in React or Angular is a plus.
A proven ability to deliver technical features within an enterprise application.
Experience using Source Control such as Git.
Basic understanding of UX/Design.
Strong communication and presentation skills, both verbal and written, in English.
Experience writing backend and front-end unit tests is preferred.
Understanding of Agile software development methodologies/frameworks such as Scrum.
Database development experience such as MS SQL, Azure SQL or PostgreSQL.
Knowledge using CI/CD tools specifically Azure DevOps, Sonar, YAML.
Ability to communicate effectively with different kinds of audience e.g., presenting a technical solution with developers, or highlighting pros/cons of an architectural design to the management team
Experience in microservices architecture embraced in cloud native applications.
Exposure to Azure DevOps, Microsoft SharePoint, Microsoft WinForms.
Desirable
Experience in Azure Serverless (Functions, Queues, Storage), Azure DevOps, Microsoft SharePoint (Microsoft Graph API, SharePoint APIs), Microsoft WinForms.
Knowledge of Microsoft 365 (especially SharePoint and Outlook)
Any Graduate