What we can offer
Meaningful and interesting projects delivered to high profile clients across the Energy Sector within the UK and other international locations as required
Commitment to Diversity and Inclusion; we are an organisation actively committed to diversity and inclusion across our business
Competitive renumeration package with regular reviews to ensure we are rewarding at the right level in line with the market
Commitment to continued professional development; development plans that are tailored to your individual needs and interests
Global connections; join experts around the world who are at the leading edge of our industry, shaping the standards of our profession
The key objectives for .Net Full Stack Developer role are
Leads software development teams using Agile, Continuous Integration and Delivery practices utilising and driving the adoption of automation to boost release velocity and reduce time to market
Supervises and directs people and other resources to achieve specific business outcomes within limited timeframes while removing obstacles and shielding the team from interruptions during sprints and delivers the full scope of the sprints on time
Develop existing and new applications by analysing and identifying areas for modification and improvement. Develop new applications to meet customer requirements
Works with project managers, product owners and QA engineers to manage sprint backlogs, clarifies and priorities user stories, analyses and manages the pact of changes to the rest of the application by providing technical approach and execution planning
Monitor, identify, and correct more complex software defects to maintain fully functioning applications software
Elicits complex business requirements using a variety of methods and express the requirements in terms of target user roles and goals
Defines and maintains a road map to facilitate software development and ensures the development work is accurately estimated and prioritised in line with business requirements
Creates solution architectures, system analyses, designs and has hands on involvement with developing new functionality and enhances existing products/solutions
Governs and contributes to core principles, practices, architectural and security by design principles and standards
Resolves complex technical issues through debugging, research, and investigation
As a subject matter expert on the team, maintains an understanding of current technology, product and domain knowledge, database management, programming practices, and future trends through ongoing self-learning
Designs and monitors quality of source code, configurations, tooling, automated tests and monitors, diagnoses, and corrects performance and security issues
Conducts code reviews and advocates for technical excellence while being open to change when needed
Leads by example by writing well designed, high-quality, well tested and clean code following SOLID principles
Degree level education in relevant subject such as Computer Science or Software Engineering
5-8 years' experience with .NET Full Stack
Must-Have Skills
Strong OOP concepts
C#
LINQ
.NET Core / ASP.NET Core
Web API Core
Entity Framework (EF / EF Core)
SOLID Principles
Design Patterns
Azure Services
HTML
CSS
JavaScript
Bootstrap
Unit Testing Frameworks (xUnit, NUnit, MSTest, etc.)
SQL Server / SQL
Nice-to-Have Skills
Blazor
Azure Certifications (AZ-900, AZ-204, etc.)
Proven working experience of leading software development teams using Agile, Continuous Integration and Delivery practices
Proven ability to provide leadership, mentoring and leading others and always advocate for technical excellence while being open to change when needed
Commercial working experience of design and development of full stack medium/large web applications with hands-on experience with front-end, middle-tier and ORM frameworks
Secure coding practice in line with industry best practice such as OWASP
Expert in design patterns and Object-Oriented programming
Expert in writing unit and integration tests using a mocking framework
Proven track record of leading full lifecycle development including requirement gathering and analysis, design, implementation, deployment, testing and maintenance
Extensive experience with Continuous Integration (CI) and Continuous Delivery platforms and tools
Exposure to Blazor is beneficial