Blog: It’s exciting to be a Salesforce platform developer - Stack Exchange is wrong

The 2015 Stack Overflow Developer Survey came out earlier this year concluding that “Salesforce” was the most dreaded technology of the year among the Stack Overflow crowd.

[22. november 2015] I’ve been spending my working hours since 2009 as a Salesforce platform developer and technical architect, consider myself part of the Stack Overflow crowd and it’s not that I generally disagree with the survey conclusions - I spend hours doing Javascript development both in side-projects and professionally, gets excited when my SQL query is well structured and performs and have been working in both large and small scale Java, Ruby, and PHP environments. 

Yet, I am confused about the ranking of Salesforce. Therefore:

Here are my top 4 reasons why I enjoy making my living from solving Salesforce platform development challenges - and why I think you should consider it too:

#1 - You get to work on an integrated truly cloud based platform - don’t let the name fool you

Salesforce (which is the name of both the technical platform and the company behind it) was founded in 1999 as a web application for managing sales - and later service - departments. Hence the name “Salesforce”.

Today Salesforce is a platform for developing business application - especially applications in the customer facing domains. The platform still includes the flagship “standard applications” for sales and service management, though they behave more like standard components on a development platform. This means you develop on a platform not only with basic features such as environment-control, database, ui patterns, unit test framework etc. built in, but also more abstract platform features such as social network, user profiles, advanced and role based privilege control, advanced UI components, reporting, automatic API and mobile enablement etc.

The platform is a true cloud platform (as defined by NIST) meaning you will always work out of the Salesforce data centers, removing all development environment setup issues from your table.

Currently, a lot of work is done in the Salesforce defined languages APEX (for backend code) and Visualforce (HTML with additional markup available - similar to JSP or ASP) easily recognizable to Java or C# developers. Though it can get frustrating to work in a language less mature than Java or C# many Salesforce developers end up enjoying the game of building elegant code to execute with the platform governors and limits.

Recently Salesforce has released Lightning - a platform supported Javascript based framework to improve the development experience when developing more advanced and mobile friendly features as single page applications.

Though this is the core of the platform, it also covers features for digital marketing, analytics of seriously large data volumes, IoT, and very flexible deployment of custom built applications written in - almost - any language - go “git push heroku master” for more on this.

So to sum up - a cloud platform with lots of features and possibilities.


#2 - You get to work on the cutting edge

This point might be pushing it a bit. Still, within the business IT-domain, Salesforce can confidently be categorized as the cutting edge. Gartner rates Salesforce as leaders within a few areas including cloud based development platforms and Forbes has rated Salesforce as the most innovative company across all industries each year from 2011 to 2014 only beaten by Tesla in 2015.

All discussion of the accuracy and value of such rating methods aside, it reduces your anxiety for spending your skill building effort on legacy technology.


#3 - You get things done - appreciated by actual business people

As mentioned under #1 the level of abstraction and platform support is high. You start the development effort without having to worry about a lot of technical infrastructure. This means you get to focus more on what makes sense to build and how the business logic should be implemented. I.e. high productivity and focus on solving actual problems rather than technical problems already solved by others. This gives us the possibility for working close to the business requirement owners… something most developers should love.

A side effect of the higher level of abstraction is that the risk of getting stuck with maintenance of a running solution is lower, both because the platform will handle parts of the maintenance (platform patches and improvements are rolled out 3 times a year) and because it’s simpler to hand off solutions you’ve build because the tool-set you’ve used will be known by other Salesforce developers - fair to say that’s not necessarily the same for a Java project.

Finally you get to collaborate a lot with the people you’re building solutions for. This means the actual end-users, the experts on the standard components of the platform - a.k.a. Business Analysts. Working closely with these roles will give you the immediate bruises when you get something wrong (... where wrong has nothing to do with the beauty of the code behind a feature) but also your chance to shine with cool implementations and logical perspectives on business requests.


#4 - You can make a living

… and regardless how idealistic you are about putting your effort where you find it interesting, or where it’s best for the greater good, it matters.

Many cool technologies come out of a hobby, volunteer, or research community and then becomes commercially interesting at some point where it’s then possible to make a living. With Salesforce it’s the other way around. The downside is that it makes little sense for hobby projects, but on the other hand that means most Salesforce development needs are then driven by a business need and thereby an opportunity to get paid for fulfilling it.

Further there’s a centrally controlled and promoted certification program to ensure you can also demonstrate your merits even to people with less technical insight in the platform.

Currently Salesforce developers are in high demand. Mainly for positions in internal IT-departments of organizations with Salesforce in their IT-landscape and in IT-consulting companies - from the small to the world’s largest. If you doubt the point, try adding a fictive Salesforce certification to your LinkedIn profile and see what happens.

Where to go now?

Explore more on Salesforce development:

And then apply for a job with us as Capgemini Sogeti - the obvious and shameless plot of this post

(If you’re Denmark based): We’re a 4 year old team of more than 20 consultants dedicated to Salesforce project delivery. It’s a diverse group of people from fresh graduates to more seasoned guys and an equal male/female distribution. We mainly work with large enterprises in the Copenhagen area, but also have engagements in other parts of Denmark (office in Vallensbæk Strand and Århus) and with the possibility to join nordic or european engagements.

We work a lot with our nordic Capgemini colleagues making us the largest Salesforce implementation team in the nordics measures by certifications.

Locally we’re organized together with other skill groups focused on enabling “Digital Customer Experience”.

In the recruitment process for this role, we look for general development and technology skills (technology not so important, though web-flavors is an advantage), logical intelligence, communication skills, and match with our 9 core values - honesty, boldness, modesty, fun, trust, team spirit, entrepreneurial, simplicity, and freedom.

If interested; Read more about Capgemini Sogeti and send your CV and some motivated words to … or call Maria at +45 52189 297 if you have questions.

(if you’re not based in Denmark): You should still consider a Salesforce technology career with Capgemini - we do have Salesforce teams in many countries.

todo todo
  • Søren Krabbe
    Søren Krabbe
    Managing Consultant
    +45 52189792