Un développeur C# est un informaticien qui utilise la plateforme .NET (proposée par Microsoft). Les autres langages supportés par cette plateforme sont le F# et le VB.NET.
Cette plateforme comprend un nombre assez grand de framework dont les dernières versions correspondent à .NET Core 3 et .NET Framework.
Pour être performant et réellement productif, l’expert C# se doit de récolter au préalable toutes les informations relatives aux différents besoins du client avant de se lancer dans le code. La fiabilité et la sécurité que confère la plateforme .NET lui vaut la préférence de plusieurs secteurs d’activité comme la finance et la gestion commerciale.
Pas de journée type chez un développeur C#. Selon ton rôle dans l’équipe, tu gères une partie ou tout le process de création d’une application web :
Les compétences techniques du développeur C# se doivent d’être excellentes. Il doit parfaitement connaître le langage de programmation C#. Il peut être spécialisé soit en développement Web – ASP.Net MVC par exemple, soit en développement applicatif - Winform, WPF etc.
Des connaissances supplémentaires en Javascript, CSS, HTML et bases de données sont également souvent exigées dans ce type de poste (SQL Server, MongoDB, etc).
Idéalement, tu vas devoir aussi maîtriser les outils Cloud, notamment toute la suite de fonctionnalités Azure, qui est le service d’hébergement Cloud développé par Microsoft. Parmi ces services, il y a les AzureFunctions, Azure AppServices, AzureFunctions, AzurePipelines, AzureRM et Octopus, AzureTable, Azure CosmosDb, AzureBlobs, AzureSql (EF Core, Dapper).
Souvent, on va demander au développeur C# de connaître les architectures en micro services, qui permettent aux applications d’être plus performantes (un bug dans l’un des « containers » ne va pas affecter les autres parties applicatives).
Enfin, on demandera une connaissance pointue des bonnes pratiques de développement :
Cela inclut notamment les principes de bases SOLID.
Responsabilité unique (Single responsibility principle) : Une classe, une fonction ou une méthode doit avoir une et une seule responsabilité.
Ouvert/fermé (Open/closed principle) : Une entité applicative (class, fonction, module ...) doit être ouverte à l'extension, mais fermée à la modification.
Substitution de Liskov (Liskov substitution principle) : Une instance de type T doit pouvoir être remplacée par une instance de type G, tel que G sous-type de T, sans que cela ne modifie la cohérence du programme.
Ségrégation des interfaces (Interface segregation principle) : Préférer plusieurs interfaces spécifiques pour chaque client plutôt qu'une seule interface générale.
Inversion des dépendances (Dependency inversion principle) : Il faut dépendre des abstractions, pas des implémentations.
Les frameworks, les langages ainsi que les bonnes pratiques sont indispensables pour un développeur. Pour bien faire son travail, il va être très important d’utiliser les bons outils, de les maîtriser et d’en proposer de nouveaux en fonction de l’environnement de développement avec lequel tu es le plus à l’aise.
Exemples d’outils utilisés par les développeurs C# (et les autres aussi) :
Tu es la bienvenue dans ce métier ! Il n’y a encore que peu de femmes spécialisées en C# (environ 10%) et la communauté se développe de plus en plus. C’est d’ailleurs parfois un critère de recherche de la part des entreprises, qui souhaitent apporter plus de parité au sein de leurs équipes.
Le plus simple est de passer par une école d’ingénieur. Les cursus proposés sont de 5 ans, post bac et permettent aux développeurs.ses d’acquérir de solides connaissances dans le domaine de l’informatique et de la programmation. Une reconversion est aussi possible grâce aux formations en ligne comme OpenClassrooms ou Udacity, cependant il te faudra muscler ton jeu avec des projets personnels et des stages pour pallier un manque de connaissance dans l’informatique en général et au manque d’expérience professionnelle marquante.
Plusieurs choix s’offrent à toi.
Les lieux où tu peux t'exprimer :
Les types de postes que tu auras :
Du bonheur à l’état pur, brut, natif, volcanique, quel pied ! Tu es backé par une communauté de dizaines de milliers de développeurs qui se réunissent régulièrement pour des meetups à Paris ou en région.
En tant que jeune diplômé,, tu peux gagner jusqu’à 42.000 euros bruts par an. Avec deux ans d’expérience en plus et un niveau confirmé, tu peux prétendre à un salaire allant jusqu’à 50.000 euros bruts.
À partir de 4 ans d’expérience, les salaires vont de 50.000 à 65.000 euros bruts et pour des postes de Lead ou Développeur Sénior, cela peut monter jusqu’à 80.000 euros ! N’oublie pas cependant que ta rémunération dépend de tes compétences techniques, des grilles de rémunération en interne ainsi que de la localisation de votre entreprise.