As a Senior Developer you will lead a small team of developers extending Microsoft CRM, Sage CRM and Microsoft SharePoint platforms. Your role is to play an active part in the creation of high-quality software products to meet customer and commercial needs, in accordance with defined standards, best practice and agreed deadlines.
Alongside developing high-quality code yourself, your role is to mentor your team (leading by example), take responsibility for the timely delivery of projects, sprints and other work packages, and to contribute to the ongoing evolution of the technology strategy and processes.
Duties and Responsibilities
Develop High Quality Solutions:
- Manage the regular, iterative development cycles for your team. This will include scoping, planning and managing team work to ensure delivery to committed dates.
- Lead the production of software and ensure quality standards are maintained within your team.
- Contribute to the enhancement of departmental systems and practices.
- Ensure peer review of code and high-test coverage are features of your teams’ best practice.
- Ensure appropriate skill gaps and training needs are addressed promptly.
- Actively drive continuous improvement in the team, company's products and processes.
Mentoring and Leadership:
- Mentor other team members to identify their development needs.
- Act as a customer champion in relation to your products.
- Escalate issues with projects and staff should the need arise.
- Ensure appropriate recording and reporting of key project information and ensure that ongoing progress and issues are managed openly.
- Actively increase levels of skills and knowledge of your team and yourself.
- Provide and receive quality feedback to/from other team members to aid personal development.
- Contribute to the research and adoption of relevant new technologies and techniques, by actively remaining up-to-date with current trends.
- Carry out formal one-to-one sessions with all direct reports in accordance with departmental requirements. Ensure you meet at least monthly with your own manager.
- In association with the Development Manager, manage the development of your own career path and personal development plan.
Collaboration and Relationships:
- With team members to co-ordinate tasks, provide assistance and ensure timely delivery.
- With the Development Manager and Product Managers to agree priorities, provide estimates, report progress and identify risks/impediments and mitigations
- With the Product Managers to ensure the delivered products meet the business need
- With other Senior Developers, Developers and Architects to maintain and share knowledge
- With Product Managers, Customers and Customer Services to understand issues affecting our customers
- With the QA team to ensure high-quality, thoroughly tested output from your team
Knowledge, Skills, Experience and Behaviours
- Either a proven aptitude for software development or a degree in computer science (or another numerate discipline)
- Relevant vendor accreditations for the key platforms, languages or frameworks
Your skills & knowledge
- Strong problem solving skills
- Ability to work in a team
- Excellent listening, verbal and written communication skills
- Excellent organisational skills
- Expert with relevant design principles and best practice
- Expert with tools that automate or assist the development process
- Expert knowledge of 1 or more key platforms: Microsoft CRM, Sage CRM and Microsoft SharePoint
- Expert software design, database and development skills
- Expert in troubleshooting complex software issues including in unfamiliar code
- Leadership, communication, presentation and knowledge sharing skills
- Able to refocus work in response to changing priorities.
- Able to solve complex problems and suggest solutions under tight timescales.
- Experience of working on multiple simultaneous projects with differing technologies.
- Able to work closely with developers and testers in a tightly integrated R&D function.
- Significant experience in designing and implementing complex software in a professional development organisation
- Significant relevant experience with an industry-recognised software development lifecycle process
- Experience in integrating complex software components
- Demonstrable experience of a broad range of successful software developments
- Proven track record of delivering products from an agile development team
- Demonstrate ownership of personal, team and departmental work.
- Demonstrate enthusiasm and proactively seek opportunities to improve the R&D function.
- Demonstrate commitment to the role, team and company, and will go the extra mile when required.
- Demonstrate creativity and react positively to new challenges and change.
- Demonstrate an innovative approach to problem solving and be unafraid to challenge convention.
- Methodical with attention to detail and the ability to maintain a consistent approach.