Je suis développeur logiciel junior et je travaille pour une entreprise depuis moins d'un an.
Bien que j'ai toujours pensé qu'être développeur de logiciels signifie développer des logiciels et coder quelque chose, mes tâches sont plutôt de type administratif, telles que la configuration de Jenkins, la réplication SQL, etc.
Ces types d'emplois sont-ils inclus dans un rôle de développeur ou un développeur ne développe-t-il que des logiciels? Dois-je en parler à mon manager? Est-ce un moyen courant pour les entreprises d'évaluer les compétences «en développement»?
Réponses:
On dirait qu'ils ont embauché un junior parce qu'ils ne pouvaient pas se permettre un senior, plutôt que parce qu'ils voulaient en fait un junior (quelqu'un dans lequel ils peuvent investir et encadrer jusqu'à ce qu'ils deviennent senior). J'ai dirigé une équipe qui avait été contrainte par des managers qui ne savaient pas mieux.
Il s'est retrouvé avec toutes sortes d'emplois malheureux comme créer des vidéos de formation pour les utilisateurs et autres et je me sens toujours coupable à ce sujet maintenant, mais j'étais sous pression pour livrer et l'attente était que l'ajout d'une tête dans la salle de développement ne ferait qu'accélérer les choses .
C'est malheureux, car cela vous met, vous et votre patron, dans des positions délicates.
Il n'a probablement pas de travail auquel il peut faire confiance à un junior, et les seniors qu'il pourrait avoir ne peuvent pas être distraits de leur quotidien. Le moyen le plus simple est de confier aux juniors de nombreuses tâches non liées au développement, avec lesquelles il ne veut pas vraiment perdre le temps des développeurs seniors.
Mais quelques problèmes en découlent.
Tout d'abord, le type de devops qu'il vous donne nécessite vraiment un développeur senior. En particulier, un serveur de build doit être installé par quelqu'un qui construit le logiciel et sait où se situent les problèmes.
Deuxièmement, le junior ne devient pas plus utile. Après cinq ans, vous feriez toujours les mêmes tâches, car vous ne pouviez toujours pas faire confiance au travail de développement réel.
Troisièmement, le junior réalisera finalement (comme vous l'avez fait) qu'il n'aide pas sa propre carrière. L'hypothèse selon laquelle les juniors sont de mauvaise qualité plutôt que faible (et à la recherche) d'expérience est une erreur terrible, mais très courante, dans cette industrie.
Alors, oui, asseyez-vous avec votre patron. Mais comprenez la situation difficile dans laquelle il se trouve. Voyez si vous pouvez arriver à un arrangement qui résout les problèmes de tout le monde. Vous allez avoir besoin d'un mentor senior et certaines de vos tâches actuelles devront être transmises à un senior. Cela ralentira le projet mais, à long terme, cela portera ses fruits. C'est le point dont vous avez besoin pour communiquer avec votre patron, et peut-être avec ses patrons. Aussi, voyez si vous pouvez trouver quelque chose que vous pouvez offrir en retour pour atténuer les coûts.
Si vous ne le pouvez pas, vous voudrez peut-être chercher ailleurs.
la source
Je trouve que le terme "développeur de logiciels" est synonyme de "programmeur". Ainsi, un développeur de logiciels est une personne dont la responsabilité principale est d'écrire du code. Dans mon premier emploi, mon titre était "Développeur", et ma responsabilité principale était de concevoir et de coder des logiciels. Mais je pense qu'il n'y a pas de définition exacte du terme. Il est utilisé différemment par différentes personnes, ainsi le sens devient flou.
Mais pour qu'une équipe de développement fonctionne efficacement, vous devez avoir ces éléments configurés, serveurs CI, réplication SQL, déploiement sur des serveurs de test, surveillance des serveurs de test, archivage des builds, etc. (Peut-être que tous ne s'appliquent pas dans toutes les situations) .
Ces tâches prendront beaucoup de temps dans la phase initiale d'un projet, mais prendront moins de temps une fois que vous aurez une belle configuration en cours d'exécution.
Malheureusement, les développeurs préfèrent coder plutôt que de gérer des serveurs de build. Par conséquent, souvent, ces tâches ennuyeuses tombent entre les mains des développeurs juniors, car les développeurs seniors ont des tâches plus importantes.
Je n'ai connu aucune entreprise qui utilise ces tâches comme un moyen d'évaluer les compétences.
Si vous n'êtes pas satisfait de vos responsabilités actuelles, je vous suggère de prendre la question avec votre supérieur hiérarchique.
la source
Ça dépend. Il semble que différentes entreprises définissent cela différemment et pour certains, il s'agit d'un terme générique pour un éventail de fonctions techniques. Pour certains, ce n'est qu'un titre. En posant la même question auparavant, j'ai obtenu une réponse similaire à "Seuls les développeurs ont la capacité de le faire dans notre organisation", je dirais peut-être, mais cela ne fait pas nécessairement son développement).
La réponse théorique est qu'un développeur (en comparant avec un codeur / programmeur) est une personne qui "résout des problèmes" même s'ils n'ont pas à faire avec "coder quelque chose".
Vous voulez coder davantage, alors demandez peut-être à votre responsable d'autres tâches de codage ou faites certaines des choses que vous faites en codant? Vous avez mentionné des éléments opérationnels, donc certains d'entre eux pourraient être réalisés par des frameworks DevOps (vérifier chef et marionnette ), ce qui rendra les fonctions plus efficaces et proches du développement.
la source
Il n'est pas rare qu'un développeur ait des compétences en administration de système. En tant que développeur senior, j'estime qu'environ 5% de mon temps est consacré à ces tâches.
Cependant, si vous n'effectuez aucun codage, vous devriez probablement parler à votre responsable de la tâche de codage. Après tout, vous souhaitez acquérir une expérience de codage. Vous avez également plus de valeur en tant que programmeur qu'en tant qu'administrateur système.
la source
Le code n'est pas très utile s'il n'est pas correctement intégré à une application ou n'accède pas aux données correctes, de sorte que les activités que vous répertoriez semblent très conformes à ce que fait un développeur. Je dois ajouter que les développeurs de logiciels sont également très mélangés dans la documentation et les tests. Ce sont des activités nécessaires à la production de logiciels.
C'est génial si votre entreprise a des spécialistes qui peuvent faire ce genre de choses pour vous, mais si ce n'est pas le cas, les développeurs de logiciels sont responsables de tout jusqu'au déploiement (et éventuellement de l'inclusion) d'une application en production et de son support.
la source
Il est assez courant qu'un développeur dans une petite ou moyenne entreprise assume certaines tâches de configuration d'administrateur de serveur / DBA / général.
Cependant, si ces tâches commencent à devenir la majeure partie de vos responsabilités, cela peut vous inquiéter en fonction de vos objectifs de carrière. Bien que vous puissiez probablement prospérer dans certaines entreprises en tant que technologue général, lorsque vous devez déménager dans une nouvelle entreprise, cela peut entraîner de nombreux problèmes dans votre transition. Si vous n'effectuez aucun développement traditionnel, vous devez vous assurer de l'indiquer clairement sur votre CV. Si vous souhaitez obtenir un emploi en développement direct après un passage dans un emploi comme vous l'avez décrit, vous devrez peut-être accepter quelque chose pour lequel vous êtes "surqualifié" en fonction des années dans l'industrie.
D'un autre côté, il peut y avoir des entreprises à la recherche de développeurs aux compétences diverses. Mais avec la tendance actuelle d'écrire du code dans les entretiens, vous devrez également avoir des compétences de codage de premier ordre, même si le travail nécessite peu de code une fois que vous êtes entré.
Si vous ne voulez pas rester coincé dans votre position actuelle, j'essaierais certainement de remédier rapidement à la situation.
la source