Unless you have a team of experienced CRM developers and implementation specialists on staff, you should always work with a CRM Partner. Attempting a do-it-yourself CRM software purchase online is one of the riskiest moves you can make (with a quick Google search, you will discover that most do-it-yourself CRM projects fail). Likewise, attempting to manage the enhancement and customization of your CRM system is destined for futility.
By working with a CRM partner, you will gain access to specialized resources who each contribute their skills to a project. A typical CRM project will have some combination of Project Managers, Business Analysts, Functional Application Consultants, Developers, Deployment Specialists, and Integration Specialists. Hoping that a single person at your company (your designated CRM administrator) can fulfill all these roles is simply not realistic.