C++DelphiDeveloper InterviewsInterviewNouvelles

Qu’est-ce que ça fait d’être un développeur Stéphane Jordi ?

smartmockups_kw40x42o

Bonjour. Cet article fait partie d’une série où nous discutons avec des développeurs de logiciels professionnels, leur demandons ce que c’est que d’écrire du code pour gagner leur vie, et peut-être obtenons-nous quelques aperçus de l’industrie du développement de logiciels en cours de route.

Notre invité d’aujourd’hui est un développeur Delphi et C++ Builder qui a un ensemble incroyablement impressionnant de photos de lui souriant nonchalamment sur les pentes de volcans absolument époustouflants à divers endroits disséminés dans le monde. Stéphane Jordi, également connu sous le nom de Steve, est un géophysicien suisse qui est passé du geek informatique à l’informatique appliquée aux besoins réels. Il s’est spécialisé dans les solutions de surveillance, d’abord pour les activités volcaniques, puis pour la surveillance sismique des centrales nucléaires, et aime porter tous les outils sur les plateformes les plus connues.

Salut Steve, merci beaucoup d’avoir pris le temps de nous parler aujourd’hui – je pense que vous venez de rentrer d’un long vol ?

Oui après ça, je vais me coucher. Je me suis réveillé il y a 26 heures et je suis en décalage horaire??

Quel(s) produit(s) Embarcadero utilisez-vous a) le plus b) régulièrement ?

Je dirais Delphi pour mes développements multiplateformes actuels et C++Builder pour les logiciels scientifiques. Étant donné que je suis impliqué dans l’acquisition de données, j’ai besoin d’un accès de très bas niveau aux cartes numériques et à des choses comme ça. C ++ est plus enclin à le faire car il est compatible avec une très large 3 ème environnement d’outils du parti.

Comment et/ou pourquoi êtes-vous devenu développeur ?

Un peu par hasard. En 1980 (j’ai commencé très tôt), j’ai acheté une calculatrice de poche à New York et j’ai découvert du jour au lendemain sur le vol de retour en Suisse qu’elle était programmable. Je n’avais aucune idée de ce que cela signifiait. L’idée que vous pouviez le laisser enregistrer et lire des séquences d’instructions était comme par magie. C’était un HP-33C avec 49 lignes (touches) qui pouvaient être enregistrées. Ensuite, mon lycée proposait des cours optionnels comme la cuisine, le théâtre et aussi l’informatique. Ce monde était encore très fermé et inaccessible. Croyez-le ou non, mais je suis arrivé au développement de logiciels en utilisant des cartes perforées en utilisant Fortran IV sur de gros mainframes. Je suis devenu accro.

steve-jordi-copy
Steve a des photos incroyables qui semblent avoir été conçues pour être des fonds d’écran

Pensez-vous que vous cesserez un jour d’être développeur ? Si oui, quelle serait la prochaine?

Pas impossible. Une fois que vous avez intégré cela dans votre ADN, vous en voulez plus. J’aime tout ce qui vient avec le développement : comprendre un problème ou un besoin, le décomposer en petits morceaux, imaginer quoi et comment ils effectueraient des opérations, écrire le code, jurer beaucoup et finalement voir que cela fonctionne. Le chemin de la complexité à la livraison est merveilleux.

Qu’est-ce qui vous a poussé à utiliser Delphi/C++ Builder ?

J’ai été embauché pour un job d’été par une entreprise qui n’avait que TurboC v2 à l’époque. C’est ainsi que j’ai découvert le langage C et la gamme de produits Borland, de Prolog à C et Pascal. Puis Delphi est sorti et j’ai vraiment apprécié l’aspect RAD de celui-ci. Je connaissais Pascal donc c’était un saut facile. Ensuite, j’ai utilisé toutes les versions de Turbo C/C++, Borland C++ puis C++Builder, ce qui était une évolution naturelle pour suivre Delphi. J’ai utilisé Turbo C++ 3 pour écrire mon premier logiciel de surveillance des volcans au… Guatemala. J’ai conçu le framework GUI complet en mode graphique DOS. Cela m’a fait passer à la programmation orientée objet et ma vie de développeur n’a plus jamais été la même après cela. C’était une pierre angulaire.

Si vous pouviez donner un conseil à un étudiant qui envisage une carrière en tant que développeur de logiciels, quel serait-il ?

Suivre son cœur et essayer. Trouvez un objectif, essayez d’obtenir un projet qui a du sens pour vous et le produit final que vous produisez sera incroyable pour vous. Le développement est beaucoup une question d’abstraction, mais aussi beaucoup d’imagination. C’est un processus incroyablement créatif. Pour moi, le développement est un art. Cela coûte beaucoup de votre temps et de vos ressources, mais le résultat, la satisfaction que vous en retirez est inestimable et tellement gratifiant.

Restez informé des nouvelles tendances et technologies. Découvrez de nouvelles façons d’écrire du code comme MVVM, Dependency Injection…

Tabulations… ou espaces ?

Les espaces

page19_zdwp5_11-benefitsofaprogrammerslife
Tous les développeurs devraient avoir accès à un énorme hélicoptère

Quelle est la meilleure journée que vous ayez vécue en tant que développeur ?

Le dernier jour de mon premier séjour au Guatemala en 1993, où j’ai écrit ce logiciel de surveillance des volcans pour ma maîtrise en sciences. J’y ai passé 6 semaines et tout était théorique. Ensuite, je me suis enregistré pour le vol de retour vers l’Europe et j’ai eu du temps à tuer. L’observatoire est en face de l’aéroport et j’y ai rendu une dernière visite. 3 minutes avant mon départ, nous avons ressenti un tremblement de terre et j’ai vu mon logiciel réagir instantanément, afficher l’onde sismique, l’analyser et la qualifier de non volcanique. C’était une validation de dernière minute de tout mon travail. Une bénédiction. Je savais que cela fonctionnait et aiderait les gens. [ C’est l’une des validations les plus impressionnantes que j’ai entendues du pouvoir des développeurs de logiciels pour aider à changer le monde pour de bon – IanB ]

Qu’est-ce qu’il y a de pire dans le fait d’être développeur ?

Être dérangé par des personnes qui ne comprennent pas, vous devez vous concentrer.

Quelle est l’astuce de développement la plus cool que vous connaissiez ?

Dans mon domaine, le multithreading. Indispensable pour acquérir, analyser, classer et créer des graphiques en temps quasi réel. Mais c’est délicat à déboguer.

Travailler à domicile, travailler depuis un bureau, travailler dans un espace ouvert/partagé ? Que préférez-vous et pourquoi ? Arrivez-vous à choisir ?

Il est agréable de travailler à domicile car, outre les obligations familiales et les horaires, vous pouvez souvent organiser votre temps pour travailler quand vous le souhaitez sans être interrompu. Mais je pourrais travailler dans des espaces de coworking ou de café. Lorsque vous vous sentez inspiré, arrêtez-vous n’importe où, prenez un café et commencez à programmer. Ne laissez pas le moment vous échapper.

Les open-spaces dans les bureaux, pas question : que des distractions.

Dites-nous quelque chose d’intéressant que vous pensez que nous ne saurons peut-être pas.

J’ai été invité à l’observatoire du volcan Mt St Helens et ils ne m’ont pas compris au moment où j’ai dit que ce qu’ils voyaient de mon logiciel de surveillance fonctionnait sous DOS et que j’avais tout créé, toutes les jauges, vis, cartes, boutons, etc … sans 3 e cadre du parti. Windows était à la version 3.1 et n’avait pas l’air si cool.

ericapp

Si vous pouviez agiter une baguette magique « réparer l’industrie technologique », que changeriez-vous ?

Sécurité. Le monde d’aujourd’hui n’est probablement pas assez conscient des risques. Non seulement pour les données personnelles, mais pour les infrastructures sensibles. Réseau électrique, hôpitaux, avions… tout cela pourrait et sera piraté. Nous pourrions minimiser le risque en anticipant.

Êtes-vous allé dans la Silicon Valley? Si oui, comment c’était ? Si non, l’avez-vous déjà voulu ?

Oui j’ai fait quelques visites. Mon travail en tant que géophysicien et informaticien m’a conduit à certaines agences gouvernementales à Palo Alto, San Jose, Menlo Park. C’était bouillant là-bas. J’aimerais quand même visiter Cupertino un jour…

J’ai vécu quelque temps un peu plus au sud à Pasadena, Californie, près de Caltech et JPL (Jet Propulsion Laboratory) où beaucoup se fait aussi (missions sur Mars).

Avez-vous déjà rencontré des personnalités technologiques célèbres/bien connues ? Qui était-ce? Comment c’était?

J’espérais rencontrer David I la semaine prochaine chez lui où je rendrai visite à des amis, mais cela ne fonctionnera pas cette fois à cause de Thanksgiving. Il aura des chocolats fins suisses une autre fois.

J’adorerais rencontrer Philippe Kahn cependant. Je lui dois tellement avec les outils qu’il m’a fournis. Mais il m’a contacté après que j’ai publié un blog sur ma carrière sur mon site Web où je l’ai remercié pour Borland.

page19_96b8m_alaska_avo_2020-nov-18
Wow!

Si vous pouviez convaincre quelqu’un d’envisager Delphi ou C++ Builder, quelle serait votre méthode, comment le feriez-vous ?

Pour C++Builder, ce serait sa stricte conformité aux normes de langage.

Pour Delphi, la facilité d’utilisation si, en tant que débutant, vous souhaitez vous lancer dans le développement de logiciels. Ce langage a du sens et fonctionne bien.

Et je pense un peu à ce que Frank Lauter a dit dans une de vos interviews : pourquoi utiliser des langages managés ou pseudo-compilés (Java, C#) quand on peut avoir le vrai ? Ne scriptez pas, compilez à la place.

Quel produit technologique souhaiteriez-vous inventer/conçu et pourquoi ?

L’ordinateur portable Tandy TRS-80 modèle 100 que nous avons beaucoup utilisé au sommet des volcans pour calibrer et vérifier notre instrument directement sur le terrain. Un changement de vie pour les scientifiques. Il était robuste et avait une interface RS232. Tout ce dont vous avez besoin sur le terrain. Il fonctionnait sur piles.

Si vous pouviez revivre votre vie, deviendriez-vous quand même développeur ? Pourquoi?

Oui sans hésiter, j’adore ça. J’ai eu la chance de pouvoir porter deux chapeaux en même temps. Être capable d’écrire des logiciels pour un domaine que j’aime. Je ne pense pas que je serais ravi d’écrire un logiciel bancaire, même s’il est utile. Je n’étais pas intéressé par l’informatique pour l’informatique. Mais l’informatique appliquée à quelque chose que j’apprécie est merveilleuse. Je veux dire, c’est totalement fou de programmer le matin et de voir les résultats l’après-midi sur le terrain, à l’intérieur d’un cratère volcanique par exemple.

La seule chose que je ferais différemment, c’est de ne pas dire à tout le monde que je suis développeur. Pour éviter de devenir la hotline de facto pour tous vos problèmes informatiques entre amis et famille.

Combien de cafés buvez-vous par jour et est-ce suffisant ?

Probablement deux ou trois, mais je n’en ai pas besoin. Je les saute souvent, étant plutôt un oiseau tardif.

Êtes-vous un faucon de nuit qui code jusque tard dans la soirée, une personne du matin qui se lève tôt et juste avant ou respectez-vous une sorte d’heures de bureau régulières ?

J’ai toujours mieux performé entre 22 heures et 3 heures du matin. J’aime me sentir actif quand les autres ne le sont pas, même si ce n’est pas très pratique. Mais je suis une personne du soir pour le développement. Je plaisante toujours sur le fait de me lever à 6h du matin mais de me réveiller à 17h.

Dans votre carrière, avez-vous déjà « fait une nuit blanche » pour faire face à quelque chose qui devait absolument être fait ?

page19_1wbec_01-geek
Développement, style années 90

Oui absolument. Pas par obligation, par enthousiasme à finir quelque chose que je trouve incroyable.

Ou en voulant vraiment tuer un bogue. A quoi ça sert d’aller au lit si tu penses encore à ce que tu pourrais faire ? Vous ne dormirez pas de toute façon.

Décrivez d’autres choses que vous avez faites dans votre carrière et qui pourraient donner aux lecteurs une idée de ce qui fait un développeur.

Continuez à apprendre, restez patient et ayez toujours du chocolat près de vous. Rester à jour avec la technologie est important afin de comprendre le marché et les besoins actuels. Comprenez également les tendances futures. Cela ne signifie pas les suivre aveuglément, mais ils peuvent définir votre environnement et votre travail.

Quelle est la question la plus stupide qu’on vous pose (aucune de celles-ci ne compte !)

Combien de jours cela prendra-t-il? Ou pire, combien de lignes ce logiciel aura-t-il besoin ? Franchement, est-ce important ? Est-ce lié à la qualité ?

Faites-vous des devis pour travailler avec des clients? Si vous le faites, sans rien révéler qui puisse vous mettre mal à l’aise, quel type de processus utilisez-vous ?

Cela dépend des clients. J’ai généralement un taux forfaitaire pour un projet. Je travaille parfois à l’heure ou à la journée pour des programmes d’aide humanitaire.

Comment empêchez-vous les clients/gestionnaires de programme/gestionnaires de « rechercher des fonctionnalités » ?

Je demande toujours contre quelle fonctionnalité la nouvelle sera développée. Vous ne pouvez pas avoir les deux dans le délai et le budget alloués si vous continuez à ajouter des choses, vous en sacrifiez une autre. Voyons d’abord la v1.0, puis nous parlerons de 1.1, 1.2, etc. À cet égard, les concepts Agiles peuvent alimenter des fonctionnalités rampantes s’ils sont utilisés avec précaution car ils permettent de s’adapter le long de la route.

Décrivez une session de codage typique pour vous. Comment ça commence ? Faites-vous des pauses ? Avez-vous des rituels/habitudes pour l’accompagner ?

J’utilise beaucoup de papier. J’écris beaucoup : graphiques, organigrammes, idées, schémas. Ensuite, je tape et je ne m’arrête jamais.

Dernièrement, j’ai découvert que travailler en petites sessions est très productif. J’utilise la technique Pomodoro : 25min de programmation et 5 min de repos, fais ça 4 fois, puis fais une pause de 15min. Essayez de réaliser 10 à 12 séances par jour. [ J’utilise aussi la Technique Pomodoro – IanB ].

Écoutez-vous de la musique pendant que vous codez ? Si oui, pouvez-vous nous citer quelques morceaux/artistes/performances ?

Rarement. Je pense que c’est trop de distraction. Certaines musiques sont parfaites cependant. Classique et j’écoute toujours Peter Gabriel « Passion ». Seule musique instrumentale inspirée de la musique africaine.

J’utilise beaucoup « Noisli », une application qui imite les environnements naturels que vous pouvez configurer. Assez bas pour ne pas distraire mais assez fort pour couvrir le bruit ambiant.

page19_rtl4y_05-volcanoprogramming
De la fumée s’échappe du volcan – c’est définitivement une mauvaise chose, n’est-ce pas ? 😲

Utilisez-vous des méthodes ou des techniques telles que Agile, Scrum, Kanban, TDD ? Si oui, pourquoi? Si non, pourquoi ?

Scrum et Kanban quand les clients me le demandent.

J’ai toujours utilisé Kanban de manière naturelle avant même de savoir de quoi il s’agissait : j’avais un de ces cahiers découpé en 4 bandes horizontales. Transformez-le en paysage pour que les bandes deviennent des colonnes et que vous puissiez ajouter des listes de tâches à chacune d’elles, en déplaçant les éléments. Une sorte de Kanban. J’utilise maintenant DayMap .

Suivez-vous les bugs ? Si vous le faites, que recommandez-vous?

Oui. Je sais que les premiers résultats ne seront pas corrects, mais surtout sachez que vous ne pouvez pas les ignorer car ils frapperont tôt ou tard. Et vous feriez mieux de les réparer lorsque vous en aurez connaissance. Dans cinq ans, vous ne saurez pas pourquoi votre logiciel se comporte mal et vous ne vous souviendrez pas de la source possible.

Les tests unitaires sont capitaux. Vous simplifierez votre vie et améliorerez la qualité et la stabilité de votre logiciel.

Quelle est la meilleure question qu’on vous ait jamais posée lors d’un entretien et comment l’avez-vous traitée ?

Pourquoi nous? Ma réponse : parce que je vais être libre de réaliser mon travail pour plaire à n’importe qui

Avez-vous déjà eu un entretien technique qui s’est très bien passé – si oui, quel est votre conseil pour les autres ? Si vous avez eu une interview désastreuse, qu’est-ce qui n’a pas fonctionné et avez-vous besoin d’un câlin ?

Oui, une banque voulait m’embaucher. Cela s’est très bien passé. Une chose est sûre, c’est toujours mieux de dire « je ne sais pas » plutôt que de prétendre savoir quelque chose de totalement nouveau pour vous. Vous pouvez ajouter « mais j’apprendrai, ça a l’air cool ». Montrez que vous êtes ouvert et non arrogant.

steve-jordi
Quand votre vue a le facteur wow!

Un bon développeur de logiciels :

Est ouvert aux autres et aux nouvelles idées.

Un mauvais développeur de logiciels

Pense qu’il sait mieux.

iPhone, Android, Autre – et pourquoi ?

iPhone pour une utilisation quotidienne, j’adore l’écosystème.

Android pour le développement multiplateforme.

Pour un développeur : PC vs Mac ? Pourquoi?

Mac. Pour le développement multiplateforme.

J’aime l’apparence du Mac, mais je passe 90 % de mon temps sur mon Mac dans une machine virtuelle Windows.

Quelle est la seule chose pour laquelle vous voudriez qu’on se souvienne?

Cet un de mes logiciels faisait partie de toute la chaîne qui n’a sauvé qu’une seule vie.

Quel est le meilleur film développeur/hacker/tech/geek ?

Ils vieillissent généralement très vite très mal. Mais j’adorais War Games à l’époque. Plus aujourd’hui d’ailleurs la nostalgie. C’était l’un des premiers films technologiques.

Aucun développeur ne devrait être vu sans :

Un cahier, un stylo et du chocolat.

Si un film était fait sur votre vie, qui voudriez-vous vous incarner ?

Quelqu’un de totalement anonyme.

Avez-vous un livre, un produit ou un service que vous aimeriez mentionner?

Celui qui a changé ma vie : la programmation orientée objet utilisant Turbo C++ par Robert Lafore .

Comme je l’ai dit, restez ouvert. Vous pouvez toujours apprendre. J’ajouterais la plupart des webinaires de David I. , Nick Hodges ou Malcolm Groves . Assez célèbre dans le monde Delphi/C++Builder. Mais j’ai beaucoup appris d’eux. Même après avoir été développeur pendant tant d’années.

Avez-vous un site Web que les gens peuvent visiter, si oui, quel est-il ?

Oui, www.tiltsoft.com pour le côté professionnel, www.sjordi.com pour le côté personnel.

Si vous utilisez Twitter, quel est votre pseudo Twitter ?

@tiltsoft

Quelle est votre méthode préférée de contact avec des clients potentiels?

E-mail. Ce n’est pas invasif et ne se soucie pas des fuseaux horaires. Je voyage beaucoup.


Merci d’avoir participé Steve – d’excellents conseils aussi ! J’ai été vraiment touché par ce que vous avez dit de votre expérience au Guatemala; écrire du code qui peut avoir un impact sur des vies, positivement ou négativement, est souvent une partie négligée de ce que signifie être un développeur. Vous pouvez en savoir plus sur les expériences de Steve au Guatemala ici : https://www.tiltsoft.com/goblog.php?post=from-fortran-to-the-world


Python GUI Development

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

Leave a Reply

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

IN THE ARTICLES