Explore Courses Blog Tutorials Interview Questions
0 votes
in Salesforce by (11.9k points)

I have recently discovered that is much more than an online CRM after coming across a Morrison's Case Study in which they develop a works management application. I've been trying it out with a view to recreating our own Works Management system on the platform.

My background is in Microsoft and .Net, and the obvious 1st choice would be However, there's only really myself with .net experience and my manager with a more legacy Synergy programming background, and I am self taught and am looking at evaluating other RAD options (eg Ironspeed).

the nature of the business is in the main 2-5 concurrent construction type contracts that run for 3-5 yrs each, each requiring 15-50 system users. Traditionally we have used our character based Works Mangement system for everything and tweaked it for each contract. The Salesforce licensing model on the face of it suits this sort of flexibilty, but I'm worried about the development flexibilty/learning curve and all the issues that surround lock-in. There doesn't seem to be much neutral sober analysis of the platform on the web that isn't salesforce's own material/blogs

Has anyone any experience of developing an application on salesforce as compared to the more 'traditional' .Net route?

1 Answer

0 votes
by (32.1k points)
edited by

Salesforce is a fairly unpleasant experience for developing complex applications. This is because Salesforce has a very specific idea of what one would want to develop, and if your application isn’t within those boundaries, you need to steer clear!

The governor limits are very limited i.e they have 16 level recursion, no more than 200 objects returned from a query, 1 meg heap, no more than 20 queries can possible in one invocation. The final result for this is that any cleverness you come up with to get around one limit runs afoul of another one.

Once you have reached a certain size, all your time will be spent on coding around these limitations. Apex doesn’t support any meaningful inheritance. Even the simple tasks end up taking days when one finds new and apparently random limitations. 

Tooling and support in Salesforce also seem to be very weak. They are unreliable and challenging to use for real development processes. Since the tools have enormous difficulty working out complex dependency issues, and numerous entities, deployment is overall very difficult.

Salesforce is definitely not a flexible environment. It is not at all a quick or fast development environment. And it is obviously not a good environment to build anything other than simple applications.

Want to learn about Salesforce in depth? Enroll in this Salesforce course provided by Intellipaat!


Browse Categories