I found questions I used interviewing a CRM developer, The questions will give CRM developers an idea of the questions you might get asked in a CRM developer interview.
This article will help you prepare for a CRM developer interview. The article will investigate the purpose of interview and discuss common topics with sample CRM developer questions
Interviews can be interesting experiences, a time to reflect on your experiences and knowledge, but don’t be too good Should you hire a Rockstar developer for your CRM project?
Interviews are scary
Many people find interviews are scary because they contain the unknown. When your mind thinks about unknowns it exaggerates things, focusing on worst case scenarios
- Forgetting a technical detail
- Not understanding the questions asked
- You can’t remember any of your technical skills
- The interviewer asking for skills and experience you don’t have
- Turning up without trousers on
What is the purpose of the CRM Developer interview
Whilst preparing for the interview, consider the interviewer’s perspective and goals of the interview
- What are the objectives of the interview?
- Identify skills and experience for the role?
- The interviewers context (e.g. developer, management, director)?
- Will the interviewee work well with existing staff members?
People can exaggerate their CV’s, part of the interview process is validate what skills and experience the interviewee has. You can assist in the process by giving as many examples of your experience and skills as possible.
Describe significant projects and your role in those projects, interviews are short so present the highlights of your recent experience.
The interviewer will see how truthful you have been on your CV and estimate your CRM knowledge and experience.
- Knowledge of CRM SDK
- Understanding of CRM out of the box functionality
- CRM certifications held
- Your Roles on those projects (looking for role exaggeration is common)
- Experience of CRM customizations
- Size of project
- Integrating external applications with CRM
- Project style (Agile, Waterfall, others)
- Where are you now?
- Where are you going?
- Why are you moving?
I am a big fan of CRM developers getting certified (read why you should get certified and the benefits). Studying for a CRM certification gives developers a good knowledge of out of the box functionality and its limitations.
Here are links to resources to help you pass the Customization and Config CRM certification
- CRM 2015 – Tips on passing MB2-707 customization and config exam
- MB2-703 – CRM 2013 Customization and Configuration Certification Information
- MB2-703 – CRM 2013 Customization and Configuration Hosk study notes
Certifications show knowledge of Microsoft Dynamics CRM, it gives no sign the person can create effective CRM solutions. Certifications don’t show character, or how they will work with other team members.
Learn new CRM features and functionality
Learning new CRM features, understanding new functionality, keeping up with latest version of CRM shows a person is self-motivated learner.
If you haven’t worked with the latest version, having knowledge on new features is the next best thing. Staying up to date with new versions of CRM and new functionality is being prepared for using it.
- What’s new in CRM 2016 and why you should read the preview guide
- CRM 2015 SDK – Why you should read the What’s new for developers
- What’s new in CRM 2015 SP1 for developers, customizers and admins
Experience and knowledge of CRM
Experience is an important commodity, you can’t buy it or learn it, only gain it.
I have seen .NET developers new CRM, struggle with CRM development due to the lack of CRM experience.
Whilst getting experience, CRM developers make and learn from mistakes and mistakes cost time and effort. Those with experience are less likely to make the same mistakes. Experience increases the chances of a successful CRM project.
Give examples of your experience in as many answers as possible, experience is one of your most valuable assets.
There will be questions on your career ambitions where do you see your career now? where do you see your career going?
Think about your career, you should have a destination in mind and a route to getting there.
The CRM world is small. If unsuccessful in this job, you might work with the interviewee in this company or a different company.
NEVER be negative or critical about your colleagues. This wastes interview time on negative things, instead talk about your skills and experience.
No one likes to work with someone who criticises and blames their colleagues. If you criticise your current colleagues, it’s likely you will criticise people in your new company.
Build your brand
Building your brand is preparing for an interview before you get an interview, it is not a quick process but a continuous process.
Build your brand by
- Write a CRM blog
- Create Youtube videos on Microsoft Dynamics CRM
- Answer forum questions
- Tweet about CRM
- Create CRM tools
- Attend CRMUG or other live CRM events
- Interact with CRM community
Contribute to the CRM community, this could lead to you knowing and being recommended by employees of the company. You can make a good impression before you make your first impression in the interview.
Creating content gives examples of your CRM ability, knowledge and experience, which can be found by the interviewers.
The Hosk CRM blog interviewers can see my CRM knowledge and experience and get an idea of who the Hosk is (yes the Hosk does like talking in the 3rd person!)
- Your brand is you
- Your point of view
- Your experience
- Your voice
Embrace your individuality, don’t copy other content but create your own unique content. Creating a brand isn’t just selling yourself to people, you want to create a compelling interesting brand like the Apple iPhone compared to many android phones you can’t distinguish between.
CV and Project experience
You be asked to walk through your CV and explain it in detail, particularly the projects
- Projects you worked on
- Different customizations you created with problems/benefits
- Different roles worked on projects
- Project problems and how you overcame them
Interviewing is a skill, the more you practise a skill the better you get. For an interview you are giving a presentation on yourself.
In the book Talk Like TED: The 9 Public Speaking Secrets of the World’s Top Minds, it has a great quote on practising your presentation
Practice relentlessly and internalize your content so that you can deliver the presentation as comfortably as having a conversation with a close friend.
There is no excuse for not being prepared for a presentation where the topic is yourself.
Practice talking about your CRM experience so you can explain the projects, roles and the positive skills and experiences you got from them.
Practising helps you give a great interview because instead of thinking what to say, you are familiar with the content and are focusing on delivery.
Information to help prepare
Read Hosk Developer articles
- Hosk’s CRM Developer articles
- 12 ways to become a better CRM developer
- Tips to boost your career in Microsoft Dynamics CRM
These articles offer insights into understanding the CRM, CRM SDK and CRM developer processes and best practices.
Your approach to CRM development, diagnosing problems and best practices are key parts of a CRM developer. Knowledge and skills can be learnt, but character and processes take longer.
Final Hosk tip
Skills and experience are important, but character is the vital.
Be confident and enjoy the experience if you don’t get this job it will have been an opportunity for you to practise your interview technique.
Make sure you have some questions to ask the interviewer. Moving job is a big decision, make sure the company is a great one, it’s likely you will be there for years.
Enjoy the interview, you have nothing to lose and a job to gain.
Other CRM interview questions
This site has some great interview questions and answers
A collection of CRM interview questions for CRM 2011
Hosk‘s CRM Interview questions
I’m not going to give the answers to the questions because they would be my answers. The questions are ones you might get asked, so if you are going to an interview think about the answers to show case your experience and thoughts on CRM development.
Q. What is your CRM experience?
Question Purpose – A summary of CRM experience, your CRM career journey.
Mention – Role and experience, concentrate on the most relevant experience for the role
Q. Tell me about your last CRM project?
Question Purpose – The question aims to find out the experience of the
Mention- Mention different customizations, difficulties experienced and how you overcame them. Show what skills you used and will bring to the role.
Q. What development tools do you use for CRM development?
Question Purpose – CRM developers can answer this question if they have done CRM development.
Mention – CRM Developer toolkit, XrmToolkit, Ribbon Workbench, Plugin Registration. Tools used in CRM development which you use.
Q. When do you use managed and unmanaged solutions?
Question Purpose – Does the developer the differences between managed and unmanaged solutions, which can be a pain.
Mention – Discuss your experiences with Solutions, how you used them. How would you use solutions.
Q. What are the disadvantages of managed and unmanaged solutions?
Question Purpose – Explain when to use managed solutions and when to use unmanaged solutions. Solutions are key part of releasing the customizations to the customer, if done badly can cause problems and waste time.
Q. How do you set up your CRM solutions?
Mention – Your experiences or ideas of how you think solutions should be created. There is no right or wrong way
Q. What are the potential problems with multiple developers working on a project?
Question Purpose – What development environments have you worked in, with how many developers, problems and solutions.
Mention – How you have developed solutions with a team of developers and what problems can arise.
Q. How do you debug a plugin?
Question Purpose – Lots of CRM Developers debug in different ways but it’s an important skill because CRM developers must test be able to test and debug their code.
Mention – How you debug, e.g. Unit Test, console app, Remote Debugging or plugin registration tool
- CRM 2015 – Understanding the plugin profiler and a puzzling error
- Debugging online plugin in CRM 2013
- Debug a plug-In
- Getting started with unit testing with Microsoft Fakes
Mention – Pressing the F12 key and getting your breakpoints setup and hit. If you haven’t done this, try it out, it’s awesome.
Q. Have you integrated CRM with other systems, what was it and did you have any problems?
Purpose – Integrating CRM with 3rd party application or other Microsoft products is common. It’s great if CRM developers have experience of this..
Mention – Any experience you have, problems you experienced and how you overcame them.
Q. How to you estimate CRM customizations?
Question Purpose – Developers have to estimate work. The greater accuracy you can estimate the better.
Mention – explain how you estimate customizations. e.g. breaking up the work into smaller chunks, taking into account risks and experience.
Q. Tell me about a project which went wrong, what were the reasons for the problems, how did you cope?
Question Purpose – Projects can go wrong, problems will happen. Showing the character to overcome problems and obstacles is an important skill. Identifying the cause of problems, taking steps to avoid them will be useful to your prospective employer.
Mention – The lessons learnt and how you avoid potential problems.
Q. How do you test your code?
Question Purpose – Unit testing code is great. if you have experience mention it. This question is asking how you test the logic of your code, which might not be unit testing. You might debug your code or write a console app to run your code.
Mention – Unit testing knowledge and experience if you have it. Your process of testing code.
- Why CRM Developers should unit test their code
- Experiences of Unit testing with Microsoft Dynamics CRM Projects
- Information to Get started with Unit Testing with Microsoft Fakes and Microsoft Dynamics CRM 2013
- Unit tests are a vital part of emerging code design
Q. Explain how pre-validate, pre and post are different plugins?
Question Purpose – Specify how running a plugin in a different stage changes the purpose of the plugin e.g. pre before data is written to the database, post is after the changes have been written to the database.
Mention – Plugin stages, images and when you use each .
Q. How are Asynchronous and synchronous plugins different?
Question Purpose – Does the CRM developers understand the difference? Explain when to use an Async plugin instead of synchronus plugin.
Mention – Time. Synchronus plugins must run straight away, async plugins can be delayed.
Q. What is a common cause of plugin bugs?
Question Purpose – To find out if the developer has experience developing, if they have they will have experienced common errors.
Mention – The most common error is an infinite loop caused by updating fields, which triggers the plugin to run again and again
- CRM 2015 – How to diagnose plugin errors
- CRM Plugins – Stopping infinite loops and understanding PluginExecutionContext.Depth
Q. What is early binding, what are the benefits and the drawbacks?
Question Purpose – To understand if you the CRM developer understands the benefits of early binding.
Mention – Early binding creates strongly typed code which is easier to read and moves the errors to compile time and not runtime. Early binding stops syntax errors which can occur with late bound code.
- Early Binding vs Late Binding Performance (Revisited)
- CRM 2013 Tool – CRM Early Bound Generator
- CRM 2013 – Create Enumerations for option sets
Q. Should you keep up with the latest release of Microsoft Dynamics CRM?
Question Purpose – Does the CRM developer understand the benefits and disadvantages of keeping your version of CRM to the latest release.
Mention – Whenever you upgrade your CRM your customizations might stop working but you get the new features and fixes. If you delay you have more versions to catch up to.
Q. How do you keep up with Microsoft Dynamics CRM news?
Question Purpose – Does the CRM developer keep up to date with CRM, if so, how?
Mention – Blogs, certifications, Microsoft Dynamics community page
Q. What is the effect of making a plugin sandboxed?
Question Purpose – CRM online can only deploy sandboxed plugins, so it’s important for a CRM developer to realise the limitations the sandbox can have.
Mention – CRM online can only deploy Sandboxed plugins and Limitations such as
- Access to the file system (C Drive)
- systemevent log
- certain network protocols
- You cannot access any other DLL’s
- IP addresses cannot be used
- Only the HTTP and HTTPS protocols are allowed.
- In isolated mode you cannot call any external DLL’s\DLL’s in the GAC
This blog had some good restrictions in a bit more detail
- Attempting to use the AppDomain.CurrentDomain.AssemblyResolve event
- IO.Path.GetTempPath() [System.Security.Permissions.EnvironmentPermissionException]
- Any filesystem access code [System.Security.Permissions.FileIOPermissionException]
- Attempting to use the EventLog [System.Diagnostics.EventLogPermissionException]
- Attempting to use IsolatedStorage [System.Security.Permissions.IsolatedStoragePermissionException]
- Any references to Thread.CurrentThread caused a security failure.
Read this blog Understanding Plugin sandbox mode for more information
Q. When do you use OData?
Mention – OData is the primary method to retrieve information from related records
Q. What Access teams and why would you use them?
Question Purpose – Access teams are not widely used, does the developer know what Access team are and how they work.
Mention – The purpose of access teams are to easily share records with a team of people where the members of the team are not static.
Q. What is Metadata and how is it used in CRM?
Question Purpose – Does the CRM developer know what Metadata is and how it works with CRM
Mention – Metadata is the data about data. CRM has lots of Metadata, types of field, optionset value, auditing etc. To retrieve Metadata you need use webservices, RetrieveEntityRequest for entity Metadata and RetrieveAttributeRequest
Q. What things should you consider when choosing between CRM online or on Premise?
Question Purpose – CRM online has several limitations compared to CRM on premise, a CRM developer should understand them.
Mention – The big difference is you can’t see or modify the CRM server and SQL server. CRM Online limitations, such as Sandbox plugins, workflow limit of 200, custom entities 300, storage is a monthly fee.
- Microsoft Dynamics CRM – Online vs. On Premises Decision Matrix
- What are the limitations of Microsoft Dynamics CRM Online and how do you work with them?
- CRM 2013 Interview Question – What things should you consider when choosing between CRM online or on Premise
- Quick Compare: Microsoft Dynamics CRM Online vs. On Premise
- Microsoft Dynamics CRM 2011 – Limitations of Dynamics CRM Online Vs On Premises
Q. Why is code readability important?
Question Purpose – To find out if the developer designs code, codes to best practices
Mention – Reading and understanding code is important because code spends most of its time in a maintenance state. Developers will need to read and understand code to extend the code, debug the code.
Q. If a user complained a particular CRM form is loading slowly, how to investigate, what to look for?
Q. If CRM stopped working, what would you check?
Question Purpose – This test experience. CRM will stop working on production systems is good to know a CRM developer will know what to check. To understand what to check the CRM Developer will need to understand the architecture of Microsoftt Dynamics CRM.
Mention – CRM Async services stopped, APP Pool service account password, SQL Server services, Disk space, Active Directory
Q. What is the POA table and how can it affect performance?
Question Purpose – The POA table is used for security and sharing. A large POA can cause performance problems
Mention – security, sharing problems.
How would you questions?
Q. validate a phone number on a form
Q. Add a sequential counter to a custom entity
Q. Automatically fill in an address field when a user selected a contact lookup field on a custom entity.
Q. Send an email on the creation of an account record.
Q. Update a status with a plugin