So you want to build a Salesforce application?
Photo by Russ Hendricks
As the Salesforce ecosystem grows, anyone with basic coding skills and a steady stream of caffeine thinks they can build a Salesforce application. But our tenure in this space has taught us some important lessons about app development. If you’re considering building a Salesforce app, read on to learn what stages you should consider and how we can help.
Idealist Consulting began its journey with application development over ten years ago. In fact, we developed two of the first fifty applications on the AppExchange (EDVantage and NPOrganizer). Since that time, we’ve developed a number of applications for businesses and nonprofits and the list continues to grow. Much of that success is attributed to the monumental growth of the AppExchange, which has expanded to over 3000 applications and over 3.5 million installs; a long way from the 50 that were there when we entered the scene!
I can remember speaking to Salesforce about developing an application in those early days. Their comment will likely resonate for as long as I work with app development:
"If you understand what’s going on, you’re not paying attention."
The challenges of creating a published app are many, and if you don’t plan for contingencies, you'll find yourself in a tough spot. With that in mind, I’d like to provide the basics of app development for those who wish to get their heads around the process. There are three phases of app deployment: Opening, Mid-Game, and End-Game, and you should work your way through all three before you embark on your journey.
Opening: Plan
In this stage you need to consider three things:
- First, you need an idea. Make it simple. Salesforce’s very own Rob Lamb once said that, “The most successful applications do one thing very well,” and it’s just as true now as it was eight years ago when he first said it. Conga does mail merge, Brickwork does donations, Cirrus integrates your email. Top solutions all focus on one concept. This helps keep you on task with development and will help you promote the application later.
- Second, you need to decide if you want a published application or an unpublished application. A published application costs more money but you get a listing on the AppExchange. An unpublished app is less expensive and faster to deploy but you have to promote it yourself. Ask yourself if this application is for sale/promotion or if it’s intended to augment an existing solution. If it’s the latter, go with unpublished.
- Third, know if your solution is targeted to both public and private sectors. If the answer is yes, you need to know that the structure of their respective platforms may differ, resulting in the need to build two separate applications.
Mid-Game: Build
At this stage, there are four fundamental elements to consider:
- First, do you know what you are doing or do you need external support? People assume this is a turnkey process; it can be if you know what pitfalls to avoid, but if you haven’t done this before, it will likely be a rocky road. Double the time you expect yourself to need; you’re learning an entirely new ecosystem of application development, after all. In the event you find yourself stuck, you may have to pay much more to fix your mistakes than you would have if you had started with an experienced app development firm. You have to decide if learning the process (and paying for any mistakes) is worth it for you, or if it would be better to call in an expert for this phase.
- Second, have you planned enough time? It takes roughly ten weeks to get an application developed. This is assuming you are not in the log jam for Dreamforce; tons of firms are trying to get apps published before this big annual conference. If you submit your application at the wrong time, your approval/publication process could be slowed down significantly.
- Third, are you prepared to support the project? The desire to build an application and the ability to do so are two very different things. Review our ‘Be Prepared, Not Scared’ whitepaper to make sure your ducks are in a row before you begin.
- Finally, do you have the money? The deployment costs for development range between $30-150K depending on your goals. A proper scope from a reputable consulting firm will save you the anguish by discovering these costs before you begin development. Remember that this doesn’t include post-launch support.
End-Game: Support
Speaking of support, once you have your app you’re ready to go, right? Wrong. This stage is often overlooked and is a significant box to check if you wish to be successful. Check out our next posts in this series for what you should keep in mind to ensure post-launch success, including case management and promotion.
There are a number of moving pieces you have to consider for a healthy application development. Seeing the full view of the process is the first step in setting yourself up for success. Are you looking to develop an application on the Salesforce platform? If so, give us a call. With the right guidance it can be a fun process!