Principal Developer

Experian | Posted 4-11-2020

Nottingham (IT)


Principal Developer
Nottingham
Role Summary

This role is responsible for the design, development and maintenance of complex organisationally critical systems. This role has responsibility for managing the delivery of large, sophisticated web applications. An ability to build and mentor in C#, JavaScript, and SQL is required and along with experience working on both the front-end and the back-end of web applications. The Principal Software Developer should consider trade-offs and identify the best design for each project. The role should apply agile methodologies and appropriate project and process management techniques to deliver project to time and budget. Our people have a passion for learning and programming and we need you to be able to provide them with the support, guidance and encouragement with their efforts. Depending of the project you will be in a position to manage a team of developers, and be responsible for all its technical aspects, from design to implementation. In addition the role includes line management responsibility for a team of software developers. The Principal Software Developer is a go-to person in the organisation and leads by example in all they do.


Key Responsibilities

Performance Management

  • Understand and participate in Performance for Growth ensuring stretching personal objectives, a personal development plan and regular self and team feedback.
  • Comply with the Training and Competency requirements and complete required training in a timely manner.

Customer

  • Champion a culture that achieves the business goals, delights customers and keeps consumer advocacy at the heart of everything that Experian does.
  • Ensure that good client / consumer outcomes are at the centre of decision making.
  • Promote great service and seek to exceed client / consumer expectations.

Regulatory, Governance and Control

  • Adhere to all regulatory requirements within area of responsibility and escalate issues quickly.
  • Pro-actively identify risks and take steps to mitigate these.
  • Ensures team members understand the importance of adhering to their regulatory obligations and responsibility for implementation of company policies and procedures.
  • Ensure team members understand the operating model and the functional and individual responsibilities

Operational

  • Teamwork will include, but is not limited to, interfacing and collaborating with the following:
    • Product Management
    • UX & designers
    • Business Analysts
    • Build and Release
    • Technology Operations
  • Understand and adhere to Experian processes and policies including, but not limited to, software development lifecycle, product development lifecycle, governance and compliance and performance management.
  • Identify and resolve complex software issues.
  • Identify potential process improvement areas and suggests options and recommends approaches.
  • Assess the health and performance of applications.
  • Designs and builds complex software systems capable of servicing many client or products, whilst adhering to a common central design
  • Drive standards for other members of the team ensuring that best practice is adhered to.
  • Manage a small team of software developers on large and/or complex projects

Technical Knowledge

  • Influential in every stage of the project lifecycle
  • Ownership of project design and timelines and task list.
  • Create technical documents describing processes.
  • Advise on options, impact on other business processes, and system priorities where appropriate.
  • Review project proposals, evaluates alternatives, provides estimates and make recommendations.
  • Has technical ownership of multiple solutions & helps shape the roadmap for that solution

Relationship Management

  • Engage with internal client teams and project stakeholders to provide guidance on how to best to design the solution.
  • Work with External clients to guide them through the early stages of projects

Knowledge, Skills and Experience

  • Experience of a wide variety of software types, including web services, web applications and transactional systems
  • Is able to see the bigger picture and is able to design large complex systems appropriately, anticipating potential issues and avoiding them
  • Organised, identifying, prioritising and delegating tasks within a team.
  • Logical and analytical with the ability to see the implications of technical findings and issues on the end client experience
  • Passionate about programming with a genuine interest in data
  • A confident C# developer able to handle any part of a large web application, be it front-end or back-end.
  • Should have good front end experience, preferably with Vue.js, though we use other Front-end tech too.
  • Excels in SQL, JavaScript, OO design patterns, concurrency concepts.
  • Extensive experience with version control, preferably Git.
  • Significant industry experience working on large, sophisticated web applications.
  • Should be experienced in using cloud technologies, preferably AWS
  • Has strong communication skills and can simplify and explain solutions to technical and non-technical stakeholders.