Compétences 2019

L’écosystème informatique évolue sans cesse, à un rythme toujours grandissant. Afin de servir toujours mieux vos projets, environ 20% de mon temps est investit dans l’acquisition ou l’amélioration de compétences techniques. Ceci me permet de n’être pas dépendant d’une seule technologie, et de pouvoir proposer à vos challenges techniques des alternatives et des choix éclairés.
A l’aube de cette nouvelle année, je souhaitais communiquer sur cette évolution sur 3 plans : l’architecture, l’acquisition de compétences dans des technologies nouvelles et le renforcement de mes compétences de base.

1 – Architecture

L’architecture logicielle vise à concevoir une structure solide, évolutive, homogène et lisible d’une application. Cette compétence est moins mesurable ou quantifiable que la maîtrise d’un langage informatique. Elle est néanmoins cruciale dans la réalisation d’applications complexes. Comment découper une application de base ? Quels design patterns utiliser ? Pourquoi utiliser l’injection de dépendance (IoC) ? Aux aspect théoriques doit se joindre l’expérience du développeur afin d’adapter la structure en fonction des besoins réels du projet. L’absence d’architecture se traduit par un code invertébré et hétérogène. L’application aveugle des concepts théorique se traduit au contraire par une ‘suringénieurie‘.

Pour les aspects théoriques, citons notament:

Modern Web Development (Dino Esposito)

CleanCode (Robert Martin)

Pattern of Enterprise Application Architecture (Martin Fowler)

Domain Driver Design (Eric Evans)

2 – Compétences dans de nouvelles technologies

.net core – Le framework  Microsoft à l’architecture ouverte et modulaire permet de construire des sites web (MVC), webservices (Web API) et de réutiliser les mêmes librairies portables sur un ensemble grandissant de plateformes : Windows, Linux, OSX (Android, iOS et Windows Phone via Xamarin).

Flutter & Dart – Flutter est le framework Google permettant de concevoir la même application pour iOS et Android en utilisant une couche graphique soignée et ludique. Pouvoir ‘recharger à chaud’ l’application durant le développement permet de gagner un temps de développement considérable. Sortit fin novembre, ce framework est déjà très mature et l’écosystème riche permet de créer dès aujourd’hui des app en un temps record ! Dart est le langue de programmation, et permet également d’écrire des application web via le framework Angular.

Xamarin – Malgré la présence de Flutter, de React Native, Xamarin (Android, iOS ou Xamarin.Forms) reste une valeur sûre sur le marché, surtout pour les clients ayant déjà une application existante ou des programmeurs C#. Ce n’est pas une nouvelle technologie, mais son évolution rapide nécessite l’acquisition régulière de sous-compétences (la version 4 est prévue au printemps 2019, avec l’ajout d’un look unifié Material UI et un container unifié ‘Shell’).

 

3 – Compétence ‘de base’ renforcées

Le noyau dur de mes compétences reste la webstack  front-end : HTML/CSS/JS + back-end ASP.NET MVC/C#/SQL (pure ou via Entity Framework).
Ce spectre large n’empêche en rien d’avoir une expertise approfondie de chaque compétence spécifique.
Je souhaitais à titre d’exemple communiquer 5 tests réalisés sur le site PluralSight le 12 décembre 2018.
Les résultats sont tous issus d’un premier essai, il n’est possible de faire ce test que tous les 6 mois.

https://app.pluralsight.com/profile/claude-philippe-liev

 

ASP.NET MVC5 – Expert – 232 – 92e percentile
C# – Expert – 203 / 82e percentile
HTML5 – Expert – 221 – 89e percentile
CSS – Expert – 221 – 89e percentile
JavaScript – Expert – 202 – 81e percentile

About PluralSights Tests

https://help.pluralsight.com/help/what-is-pluralsight-iris-and-iq

Pluralsight Iris is a skill assessment algorithm and recommendation engine. Each skill assessment includes an Iris Quotient (IQ) score.

The Pluralsight IQ is a continuous score from 0 to 300. This is based on your percentile in that skill area. Pluralsight’s exclusive adaptive skill measurements work by benchmarking your skill level compared to other professionals who also use the technology. Your percentile tells you how much more you know than others who have the same skill, and rated on a scale from 0 to 100. The skill rating range from 0 to 300 is broken into three levels:

  1. Novice: This level contains the 1st-20th percentiles
  2. Proficient: This level contains the 21st-80th percentiles
  3. Expert: This level contains the 81st and higher percentiles

How accurate is Skill IQ?

Iris has high levels of statistical accuracy. Please see our Iris Frequently Asked Questions, and more information on Iris and the Skill IQ methodology.

Questions are added regularly from the largest network of expert practitioners so that Iris is relevant and constantly evolving. The difficulty of the questions change based on right or wrong answers given by all individuals who have taken a particular assessment. The tests are short and comprehensive because they are based on modern test theories, Bayesian statistics, and machine learning to model skills and find questions which match those skills.

div#stuning-header .dfd-stuning-header-bg-container {background-image: url(https://codepilot.be/wp-content/uploads/2016/07/pexels-photo-24464-1.jpg);background-size: cover;background-position: center center;background-attachment: scroll;background-repeat: no-repeat;}#stuning-header div.page-title-inner {min-height: 400px;}