After setting up a new SQL Server instance for development I found the following permissions were needed extra permissions were needed to enable key development features… (Note these were for a development instance and should not be needed on a production database)

Permission To View Query Plans

This needs to be granted for each database….

GRANT SHOWPLAN TO [myDomain\myUser]

Permission To View Server Activity Monitor

USE master
GO
GRANT VIEW SERVER STATE TO [myDomain\myUser]

Permission To View Jobs/History

USE mdsb 
GO 
EXECUTE 'sp_addrolemember 'SQLAgentReaderRole', [myDomain\myUser] 

If you need to be able to start/stop jobs then swap SQLAgentReaderRole for SQLAgentOperatorRole.

Are there any other permissions you need for your day to day development work? Leave a comment and I'll add them here.