Une introduction à la pile sérieuse derrière les développeurs Salesforce


Mon parcours de développeur Salesforce

Je développe des logiciels depuis trente-cinq ans. À la fin des années 2000, j’étais un développeur tête baissée qui écrivait des applications commerciales pour mes clients avec les technologies Microsoft. Une décennie auparavant, je travaillais avec les premiers HTML, JavaScript, Java, ColdFusion et Lotus Notes. Et dans les années 1990, je construisais des applications de base de données de bureau avec FoxPro et Visual Basic.

Il y a environ dix ans, je commençais à m’épuiser lorsque je suis tombé sur ce qui était alors connu sous le nom de Forceforce de Salesforce (maintenant connu sous le nom de plate-forme Lightning). C’était comme découvrir un nouvel amour. À cette époque, le cloud computing commençait à peine à faire son chemin et il y avait peu de services de plate-forme offrant des capacités similaires. Aucun ne correspond à l’échelle, à la flexibilité, à la profondeur et à l’étendue de Salesforce.

Contrairement à d’autres technologies de l’époque, avec Salesforce, je pouvais créer une application en une journée et la déployer sur des milliers d’utilisateurs presque instantanément. Je pouvais modifier le schéma de données, la logique et l’interface utilisateur pendant qu’ils étaient en production sans perturber aucun utilisateur. Je pourrais m’intégrer à d’autres systèmes en utilisant des mécanismes de sécurité robustes préexistants et des API SOAP et REST standard. Et je ne pouvais même pas compter toutes ces tâches informatiques fastidieuses dont je n’avais plus besoin de m’inquiéter en tant que développeur. Et c’était amusant! Travailler au sein de la plateforme a été agréable et a permis de trouver facilement du succès en tant que développeur.

Bref, je suis tombé follement amoureux de la technologie et je n’ai jamais regardé en arrière.

Aujourd’hui

Avance rapide jusqu’en 2020. Je reste immergé dans la technologie Salesforce, où je construis des applications et des solutions métier depuis la découverte de la plateforme il y a dix ans. J’ai ensuite orienté ma carrière pour aider les autres à apprendre et à maîtriser la technologie Salesforce en tant qu’instructeur et mentor, en me concentrant sur l’aide aux autres développeurs pour tirer parti de la plate-forme pour leur propre succès.

Au cours de mes huit années en tant que MVP Salesforce et de dix ans en tant que partenaire de formation Salesforce, les clients, les étudiants et les autres membres de la communauté m’ont demandé ce qui m’a exactement poussé à migrer vers Salesforce. Après tout, j’étais un développeur d’applications métier axé sur les données, et Salesforce était pour le CRM. Je ne savais même pas ce que voulait dire CRM (Customer Relationship Management à l’époque!)

Au cours de cette série d’articles, je vais répondre à cette question. Je vais vous expliquer pourquoi vous devriez considérer le développement Salesforce comme une carrière et les opportunités de carrière uniques (à la fois techniques et personnelles) disponibles pour les deux expérimentés et développeurs débutants. Je vais parler de la façon dont la plateforme est gratifiant financièrement en raison de la base de clients en constante expansion, de la technologie en constante expansion et de la pénurie de talents expérimentés en développement. Plus important encore, je vais expliquer comment la plate-forme est devenue une plate-forme de développeur profondément technique qui nécessite des développeurs sérieux.

Économie de développement SalesForce

Mais Salesforce n’est-il pas uniquement pour CRM?

Tout d’abord, examinons la question qui a été un énorme point de confusion et un obstacle majeur pour de nombreux développeurs qui profitent de la plate-forme. Non, Salesforce n’est pas seulement CRM. Oui, il est vrai que la gestion de la relation client (ou CRM) est au cœur de Salesforce. Cependant, au service de la création et de l’évolution de leur plate-forme CRM, un effet secondaire résultant a été une architecture cloud multi-locataire de niveau entreprise, basée sur les métadonnées, qui permet aux développeurs de créer presque n’importe quel type d’application métier.

Les données clients sont au cœur de Salesforce et au cœur de la plupart des applications d’entreprise. Les clients Salesforce qui utilisent déjà le CRM disposent désormais d’une plate-forme de développement d’applications complète, qui peut être utilisée pour créer rapidement toutes les applications commerciales innovantes qu’ils peuvent concevoir: financières, gestion des tâches, gestion des contrats, flux de documents, commerce électronique, mobile, etc. .

Il permet de créer des applications rapidement, avec une pile axée sur le cloud prise en charge par les cadres de développement sérieux que vous attendez d’un système moderne: une couche d’interface utilisateur de composants Web open source (Lightning Web Components), l’intégration avec des outils DevOps tels que les pipelines CI / CD et conteneurs, un moteur d’IA (Einstein), un bus de messages de plate-forme (Platform Events), et la technologie évolue (À feuilles persistantes) pour les microservices sans serveur utilisant Node.js, Redis, Kubernetes, etc.

Devriez-vous devenir développeur Salesforce?

Regardons donc le marché. Il existe un marché fort et croissant pour les développeurs Salesforce. Le développeur Salesforce a été nommé parmi les 10 meilleurs emplois de 2019 par Indeed, avec une croissance de 129% d’une année à l’autre Et un salaire moyen de plus de 117 000 $. Pourquoi? Salesforce est utilisé dans plus de 90% des entreprises du Fortune 500. Et de plus en plus de ces entreprises migrent leurs applications non-Salesforce dans leur écosystème Salesforce. Pour réussir, ces entreprises ont besoin de développeurs familiers avec Salesforce et les piles de développement traditionnelles, et c’est là que j’ai trouvé une grande opportunité.

Comme dans le développement traditionnel, la plate-forme Salesforce a besoin d’un large éventail de développeurs avec un large éventail d’intérêts. Voyons comment cela pourrait correspondre à vos compétences.

Développeur Front-End / JavaScript

Êtes-vous un développeur Web frontal travaillant avec HTML5, CSS3 et JavaScript modulaire? Êtes-vous intrigué par les composants Web et par la création d’applications professionnelles belles et réactives qui se présentent de manière cohérente sur les ordinateurs de bureau et les appareils mobiles? Ces compétences sont très demandées au sein de l’écosystème Salesforce. Au cours des dernières années, la plate-forme a adopté des composants Web et des normes modernes de l’industrie JavaScript pour Composant Web Lightning et l’architecture modulaire basée sur les composants derrière son expérience utilisateur Lightning.

Par ailleurs, ils ont également adopté les normes open source en créant un variété de projets open source, comme le Composants Web Lightning projet, oclif – un framework pour construire des CLIs dans Node.js – et Apache PredictionIO – un serveur d’apprentissage automatique – et plus encore.

Développeur Full-Stack

Peut-être êtes-vous accro à Node.js et aux bibliothèques et frameworks JavaScript. Si tel est le cas, il y a un grand besoin dans les piles d’applications qui se trouvent sous les clouds Salesforce. Ces applications propriétaires dans leurs produits de commerce électronique, de marketing et de devis utilisent ces technologies Web pour leur personnalisation – et Salesforce se concentre sur la personnalisation.

Plugins JavaScript pour Salesforce

Vous êtes peut-être plus intéressé par les bases de données relationnelles, les procédures stockées et les couches de service orientées objet. La plate-forme Heroku permet des magasins de données gérés comme Postgres, Apache Kafka et Redis prenant en charge toutes sortes d’applications Web et une intégration facile avec la base de données Salesforce. Et tandis que l’architecture cloud basée sur les métadonnées Salesforce permet aux non-programmeurs de configurer le schéma d’objet de données Salesforce principal et de configurer les processus logiques sans code, les exigences métier plus complexes nécessitent souvent des déclencheurs programmatiques et une logique de service écrits avec le Langage de programmation orienté objet Apex.

Langage de programmation Apex

Microservice ou architecte sans serveur

Alors que l’intégration Web entrante et sortante est intégrée à Salesforce depuis plus d’une décennie, la boîte à outils Evergeen permettra aux développeurs Salesforce d’écrire de petites fonctions et une logique de microservice en utilisant non seulement Apex, mais aussi Java et Node.js. Cela leur permet d’être invoqués en mode natif depuis Salesforce, à l’aide d’outils déclaratifs et basés sur du code. La plate-forme cloud Heroku prend déjà en charge les applications et services Web polyglottes qui s’intègrent facilement aux clouds Salesforce natifs, et Evergreen étendra encore plus ces capacités, offrant un tout nouveau pipeline d’opportunités aux développeurs.

Conception du système Evergreen

Développeur mobile

Vous êtes peut-être un développeur mobile iOS ou Android. S’il est vrai que Salesforce natif est configurable sans aucun code à présenter sur les appareils mobiles, les SDK disponibles permettent un développement d’applications natives et mobiles véritablement natif pour des analyses de rentabilité personnalisées dans toutes sortes de domaines d’activité.

Intelligence artificielle / Data Scientist

Ou peut-être vous penchez-vous vers l’analyse commerciale, l’analyse ou l’intelligence artificielle. Salesforce Einstein offre des opportunités aux développeurs intéressés par la science des données, l’analyse, l’IA et les intégrations à travers des systèmes commerciaux transactionnels externes. Salesforce a également récemment acquis Tableau Software et a des partenariats permanents avec IBM et Microsoft.

Tableau de bord Tableau

Architecte de solutions

Même avec des outils Integration Cloud hautement configurables, tels que Mulesoft, il y a toujours un grand besoin d’architectes de solutions avec des compétences et une expérience d’intégration et d’identité. La plate-forme suit une approche basée sur l’API et les mécanismes intégrés de gestion des identités basés sur des normes permettent des intégrations d’applications et de services hautement sécurisées. Encore une fois, même si beaucoup peut être accompli avec des outils configurables sans code, de solides compétences de développeur sont toujours nécessaires pour créer et maintenir des intégrations efficaces dans tout paysage d’entreprise.

Pipeline d'intégration

Développeur IoT

Peut-être que vous aimez jouer avec des trucs connectés. Une entreprise fondée sur l’API serait une excellente plate-forme pour les applications Internet des objets (IoT). Salesforce a fait évoluer son IoT des offres pour soutenir les opportunités pour les clients qui ont besoin d’une communication de machine à machine dans une grande variété d’industries, telles que la fabrication, l’agriculture, la médecine et l’énergie – toutes des opportunités mûres pour les développeurs ayant des propensions “Maker”.

Mon point clé est que même si Salesforce est célèbre comme plate-forme sans code, la réalité est que l’industrie a besoin de développeurs traditionnels qui peuvent appliquer efficacement leurs compétences au sein de l’écosystème. S’il peut être difficile pour les développeurs de fusionner la logique programmatique avec des mécanismes déclaratifs, c’est un aspect qui crée une demande si élevée pour ceux qui peuvent maîtriser de telles compétences.

Et après?

Au cours des prochains articles de cette série, je vais approfondir certains de ces domaines techniques. En cours de route, je vous fournirai des liens vers des informations plus détaillées, du contenu pédagogique en ligne et de la documentation. J’admets librement que mon objectif est de vous inciter à en savoir plus – et peut-être même de vous convaincre de vous lancer.

Dans mon prochain article, je me concentrerai sur les principaux aspects de la plate-forme et ce que cela signifie d’être un développeur d’applications commerciales Salesforce. Nous examinerons certaines des capacités de développement d’applications de la plate-forme, la puissance et l’effet de levier de l’architecture axée sur les métadonnées, la nécessité de compétences de développement sophistiquées pour travailler au sein d’une telle architecture à la fois déclarative et programmatique, et plus encore.

J’espère que vous viendrez avec moi lors de ce parcours de développeur Salesforce, et j’espère (et peut-être même parier) que cela pourrait changer votre vie comme la mienne.

Publié avec la permission de Don Robins.

Close Menu