+ Start a Discussion
Michael TMichael T 

SF custom development vs. in house custom development

Hello , can anyone please post information about building custom application with med complexity using salesforce custom development? If you lived developing custom application in SF vs in house please share your experience and recommendations. 
I am NOT looking for opinions or recommendations, etc from people who are not living or lived the experience.

Bhaswanthnaga vivek vutukuriBhaswanthnaga vivek vutukuri

First thing you we should concern about security review, if your connected app is communicating with third party, that third party app also should get passed in the security review(We failed for three times coz of third party app).

After completion of every module keep your org for security review (http://security.force.com/security/tools/forcecom/) in order to make sure that our code is not vulnerable and error prone. (This is the main thing)

If you are using custom permission sets please don't include standard objects in that it'll fail in the installation step.

If you 've done main release once you can't edit the return types of the member functions, but you can change the code up to 25% by patch versions.

Park WalkerPark Walker

I've been building Salesforce applications for over 10 years, both native (Apex) applications and system integration projects. Apex capabilities are a bit primative but you can usually accomplish what you need without too much trouble and sometimes more quickly that the same task could be accomplished outside Salesforce. Your experiance will depend on the nature of the application you're building, how well that application can leverage the out-of-the box features of Salesforce and your willingness to work within the constraints of the Apex environment. If you haven't already, I'd suggest getting familiar with the developer documentation and specifically with the system limits and test requirements. If you're looking to leverage reporting features you'll want to look into those limitations as well. If you have more specific questions please feel free to ask.

Michael TMichael T
Thanks guys for your input, for an application that has members login and do activities (workflow, provide data, process data, view documents from external systems - fax - filenet / integrate with web services), some batch processing in the backend, constant changes and compliance needs with gov agencies. The worry i have is that the limitation manager workaround and the customization could be more work than a custom inhouse app. Plus, even if we gain in reusing some SF modules, i wonder if the integration and customization may end up being more work than custom development, just trying to get more insight before we have a decision for the direction we need to take. Just because me and my team we never been involved in such activity with SF and trying to get a realistic view. So Parker, what would you say about such a system i mention in high level? would you do that with SF? or custom app.

Park WalkerPark Walker
Salesforce is great for the CRUD pieces and user management, and fairly good with workflow. The new Visual Workflow option give you a lot of flexibility in what can be done and makes it easy for non-programmers to modify portions of the flow if need be, while allowing other portions to be kept in code. Support for web service integration fairly straight forward. There are also good auditing tools and it's fairly easy to add any that are not available.

I've been working around the limits for years and have found nothing that I can recall that can't be done, but it does take some time to get used to operating the way you need to. The batch processing facilities are fairly robust and are definitly the way to go if you're processing hundreds of thousands or millions of records.

I don't see anything that would make me shy away from using Salesforce for your project. I'd urge you to get a developer account and give it a try if you haven't already. The trailhead tutorials are very helpful and you can pick the ones specific to your needs. It's a good way to get a feel for the environment. You may get tired of the point-and-click interface after awhile as it can feel slow, but the gains in productivity are usually worth it. You'll also want to check out the Salesforce IDE, an Eclipse-based developer environment which provides source control and a more developer-friendly environment.