web-dev-qa-db-fra.com

Comment améliorer les compétences de programmation en tant que junior sans senior

Pour le moment, j'ai 23 ans et travaille comme programmeur junior sur un fournisseur de services de logiciels. Bien que je suis vraiment content de mon travail et de mes collègues, j'aimerais parfois avoir quelqu'un qui pourrait me dire ce qui est mauvais de mon code (architecture et ainsi de suite), pourquoi c'est mauvais et que puis-je faire pour le rendre meilleur .

Comme nous n'avons pas de senior Java programmeurs (je suis le dernier qui peut programmer Java), j'aimerais avoir vos conseils sur de devenir un meilleur programmeur.

Disclaimer: Parfois, je demande à mon non-Java collègues du programmeur si mon code est "bon" ou "mauvais", mais j'ai le sentiment qu'ils ne peuvent pas juger parce qu'ils ne sont pas Java programmeurs. (Ils ne programment à peine rien)

Y a-t-il des communautés qui sont heureuses de mentorent des développeurs junior? Cela aiderait-il si j'ai lu des tonnes de livres? Des conseils comment je peux améliorer mes compétences existantes et apprendre si ce que je fais est mauvais ou bon?

Épilogue:

Je n'ai même pas pensé à commuter l'employeur en mai lorsque j'ai posé cette question, mais que vous avez tous dit que vous avez été coincé dans ma tête et j'ai décidé de passer en avril. J'ai maintenant trouvé un nouvel employeur et j'ai eu une position de junior Java Developer à la nouvelle société. J'espère que ma croissance professionnelle va devenir meilleur à l'avenir avec mon nouvel employeur.

Je voulais juste dire merci pour tous vos conseils.

22
OemerA

J'étais dans votre position une fois où mes employeurs sont une petite équipe de programmation dissous assez rapidement pour moi quand j'étais juste à court d'un collège. Ma recommandation, pour votre croissance professionnelle, est commencer à chercher un nouvel employeur maintenant.

Être sur une équipe d'une équipe favorisera les mauvaises habitudes qui seront difficiles à casser lorsque vous travaillez sur des équipes plus grandes plus tard dans votre carrière. Je suis devenu fan de jeunes développeurs passant un peu de temps en conseil (à Une boutique de consultation de salaire, pas une boutique de style contractant toutes les heures), travaillant ensuite comme employé dans un petit magasin.

Vous allez travailler dans plusieurs organisations différentes et sous plusieurs prospects/architectes de votre entreprise et de vos clients. Vous verrez différents styles archtectuels et styles de programmation de première main, tout en témoignant des forces et des faiblesses.

Pensez-y comme les Rotations Les élèves de médecine font au cours de leurs deux dernières années d'école de médecine, où ils passent quelques mois en groupe de différents départements dans plusieurs hôpitaux. Cela leur permet de voir un groupe de champs et de situations différents, ce qui leur donne une plus grande bredthe d'expérience alors ce qu'ils veulent se spécialiser.

Les développeurs de logiciels doivent faire la même chose, car pour la plupart, il n'y a jamais qu'un seul moyen de faire quelque chose de bien. [Vous pouvez sous-traiter le conseil pour travailler pour une grande entreprise qui permet explicitement que les gens changent de rôle et d'équipes relativement librement, car cela vous permettra presque d'obtenir un ensemble d'expériences.]

22
ben f.

Puisque vous n'avez pas accès à une personne en direct sur place, vous pouvez poster des échantillons de code que vous pense pourrait être poisson à des sites comme - https://codereview.stackexchange.com/questions , expliquez pourquoi vous postez cela ("Peut-être que je peux le faire mieux?", ...) Et voyez ce que les gens pensent (assurez-vous de frotter et informations sensibles à la société d'abord).

Si vous aimez les livres, vous pouvez consulter certaines livres de "meilleures pratiques". "Java efficace" de Bloch ( http://java.sun.com/docs/books/effective/ ) est très bon. C'est plus un livre de référence qu'un livre de couverture, mais toujours très utile.

En supposant que vous ne puissiez pas quitter votre organisation et qu'il n'y a pas de schéma de mentorat, vous pouvez (en plus des forums en ligne tels que SO et Javaranch ) rejoindre votre local groupe d'utilisateurs Java) . Celui que je aide à fonctionner spécifiquement exécute un sous-groupe de développeurs de diplômés et héberge des dojos et des ateliers. Rejoignez également votre communauté d'artisanat logiciel local, ils feront de même!

Ht

4
Martijn Verburg

Oemera,

C'est génial que vous aimez les personnes avec lesquelles vous travaillez et vous obtenez probablement un sentiment d'appartenance depuis que cela semble que les personnes de votre entreprise s'appuient maintenant sur vous pour que les choses se produisent.

Ne pas être philosophique sur vous, mais le Japanise dit "Il est plus facile de marcher vers le chemin déjà cartographié." Un moyen sûr d'améliorer est de passer du temps avec des personnes qui constituent de meilleurs programmeurs alors vous êtes. Vous pouvez regarder autour de vous pour un nouvel emploi qui vous mettrait dans une équipe d'ingénierie. Vous pouvez également faire des projets secondaires comme Open Source. Votre travail serait examiné par d'autres poires, mais vous seriez également exposé à d'autres.

Dans un monde idéal, vous souhaitez être contesté et améliorer au travail et vous détendre en dehors du travail.

Le meilleur moyen d'améliorer votre programmation est de lire le code des autres peuples. Si vous n'êtes pas dans cette position, cela devrait être une indication pour vous que quelque chose doit changer.

3
Erion

Si vous n'avez pas de programmeur principal, vous pouvez toujours demander des suggestions dans les communautés telles que revue de code ou dans toute autre communauté.

Assurez-vous de suivre les Conventions de codage .

N'oubliez pas d'examiner votre code pour les fuites de ressources.

Et enfin, vous pourriez améliorer vos compétences en participant à des communautés telles que Stackoverflow en étudiant les autres problèmes ou en les aidant.

2
Searock

Avoir la passion

Sans mentor, la principale chose qui va vous empêcher d'améliorer est si vous êtes passionné par ce que vous faites. Parce que si vous n'êtes pas, personne ne va vous pousser. Vous deviendrez stagner comme tous les programmeurs médiocres là-bas.

Vous devez vous pousser. Toujours apprendre, essayer de nouvelles choses, lire des livres, des blogs, donc, etc.

2
JD Isaacks

Trouvez un projet open source que vous aimez et impliquez-vous. C'est un excellent moyen d'écrire du code et d'obtenir de nombreux yeux plus expérimentés.

1
HedgeMage

Le code est bon s'il correspond aux pratiques acceptées de votre organisation et/ou dites les pratiques acceptées du Java Standard. Microsoft, par exemple, comme publié la norme C # et le format qu'ils suggèrent un programmateur C # .

Le mot que vous cherchez à utiliser est en fait collègues.

Je ressens la seule différence entre un développeur junior et un développeur senior est la quantité d'erreurs qu'ils ont chacune apprises.

1
Ramhound