As a Dynamics CRM Developer you will be extending Microsoft CRM. 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, your role will involve assisting your team Senior Developer in scoping work and refining processes to ensure the timely delivery of projects, sprints and other work packages. You will also act as mentor to Graduate Developers in the team, and continually improve your, and others’, skill set by cross-training with other development teams.
Duties and Responsibilities
Develop High Quality Solutions:
- Working with your Senior Developer, actively engage in the regular, iterative development. Assist in scoping, planning and managing your work to ensure delivery to committed dates.
- Deliver software to the high quality standards expected by your team, and ensure those standards are maintained.
- Contribute to the enhancement of departmental systems and practices.
- Ensure peer review of code and high-test coverage are features of your deliverables.
- Identify appropriate skill gaps and training needs to ensure they are addressed promptly.
- Actively engage in continuous improvement for your team and the company's products and processes.
Mentoring and Leadership:
Working with your Senior Developer…
- Mentor less experienced team members to help identify their development needs.
- 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.
- Manage the development of your own career path and personal development plan.
Collaboration and Relationships:
- With team members to complete tasks, provide assistance and ensure timely delivery.
- With the your Senior Developer or Development Manager to agree priorities, provide estimates, report progress and identify risks/impediments and mitigations
- With other 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
- Good problem solving skills
- Ability to work in a team
- Good listening, verbal and written communication skills
- Organisational skills
- Relevant experience with design principles and best practice
- Knowledge of tools that automate or assist the development process
- Strong knowledge of software design, database and development skills
- Good at troubleshooting complex software issues including in unfamiliar code
- Knowledge of: Microsoft CRM
- Able to solve problems and suggest solutions under tight timescales
- Experience in designing and implementing software in a professional development organisation
- Experience in integrating software components
- Demonstrable experience of successful software developments
- 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.
- Demonstrate ownership of personal and team work.
- Demonstrate enthusiasm and proactively seek opportunities to improve team processes.
- Demonstrate commitment to the role, team and company.
- Demonstrate creativity and react positively to new challenges and change.
- Demonstrate a logical approach to problem solving.
- Methodical with attention to detail and the ability to maintain a consistent approach.