Je travaille actuellement pour une société de 2 personnes en tant que développeur primaire solo. Mon patron obtient les clients, se moque des modèles de conception PNG et les tend à moi.
Ce système fonctionne bien et je l'apprécie vraiment.
Les types de projets que je travaille sont destinés aux petites - entreprises de taille moyenne et ils veulent généralement un système CMS. Développé à partir de zéro, je vais créer un backend personnalisé pour le client pour ajouter/éditer/supprimer des catégories, des balises, des produits, etc., puis de les sortir à l'extrémité avant en fonction du modèle de conception de la conception. Au fil du temps, les projets ont augmenté de complexité, avec des fonctionnalités de panier/de commande et d'autres fonctionnalités de type e-commerce commun.
Encore une fois, ce système fonctionne bien et je l'apprécie vraiment.
Mon problème est mon développement personnel en tant que programmeur. Je passe beaucoup de mes temps libres de lecture de blogs de programmation, en vérifiant via Stackexchange, lecture de livres de programmation suggérée (actuellement sur ' le programmeur pragmatique ', vraiment bon alors Loin), faire des exercices de cerveau ( Lumost.com et Khanacademy Problèmes de mathématiques ), faire beaucoup d'exercice physique et d'autres activités de type de développement personnel.
Je ne peux pas m'empêcher de ne pas m'empêcher que je manque de commentaires, critique. Mon patron est génial et ne retient jamais la louange à mon travail, mais il est malheureusement soit trop occupé à vérifier mon code, ni à être honnête, je ne pense pas que ce soit une de ses spécialités et que cela ne puisse donc pas fournir de commentaires .
Je veux savoir ce que je fais mal et ce que je fais bien. Devrais-je mettre autant de logique dans le contrôleur, je modulons assez mon code, etc.
Donc, ce que j'ai fait est développé une petite application de "budgétisation familiale" et essayé de le faire aussi proprement et efficace que je sache actuellement comment.
Ce que je veux savoir, c'est y a-t-il quelque part pour que je puisse soumettre cette application et que certains développeurs chevronnés fournissent des commentaires. Ce n'est pas simplement une sous-section de mon code comme "Codereview.stackexchange" semble avoir besoin, c'est tout mon flux de travail que je veux critiqué.
Je sais que c'est beaucoup à poser, et je m'attends à ce que l'avis principal donné sera de rechercher un emploi au sein d'une équipe, ce qui est certainement quelque chose que je vais examiner plus tard dans la piste, mais pour l'instant, je veux persister avec mon courant Situation de l'emploi, mais ne veulent tout simplement pas développer trop de mauvaises habitudes.
Faites-moi savoir si je peux fournir des informations supplémentaires pour aider à clarifier, ou si ce n'est pas le bon endroit pour ce type de question, je m'excuse à l'avance. Je ne voulais pas utiliser Reddit comme je ressentais que cette communauté favorise plus bien les réponses.
Vous êtes sur la bonne voie pour améliorer vos compétences et il est compréhensible que vous n'ayez pas incertain de la fiabilité et de la préparation d'entreprise de votre code.
Il s'agit d'un processus normal pour passer par un développeur junior et votre intérêt à améliorer est très important, car il s'agit d'une clé d'un jour de devenir un développeur de rock-star.
En tant que référence pour apprendre les meilleures pratiques, je vous recommanderais de rejoindre des projets open-source qui sont hébergés gratuitement pour les programmeurs passionnés/curieux. Ils vous aideraient vraiment à comprendre comment utiliser les meilleures pratiques et sur la manière de décider de la conception des applications. En outre, essayez de vous impliquer dans le développement de projets open-source, car il augmentera votre auto-apprentissage et votre amélioration de façon spectaculaire.
Je recommanderais également de participer à des événements communautaires locaux pour les développeurs de logiciels. Vous pouvez trouver certains de ces groupes à communautairemegaphone.com . Parlez avec les programmeurs de Buddy local, ils sont principalement de bonnes personnes qui ne voudraient pas aider un collègue.
Lorsque vous acquérez plus d'expérience, vous pouvez certainement revenir en arrière et revoir vos projets/code précédents pour voir où vous avez mal tourné. Le recul est une belle chose. Je sais pour un fait que j'ai regardé le code/la documentation que j'ai écrit x il y a et réalisa où je me suis trompé et où j'aurais pu améliorer.
Le fait que vous lisiez des blogs, des livres, de la SE, etc. Devrait vous donner une plus grande idée de la programmation dans le cadre de votre propre développement personnel, ainsi que l'essai et l'erreur et l'évolution de vos projets et de vos projets devraient certainement être prouvant le fait que vous " réapprendre. La critique auto peut être une très bonne chose.
Cela dit, avoir l'œil critique d'un autre développeur ajoute toujours de la valeur et peut fournir des avis/options que vous n'avez peut-être pas pensé. Bien que je ne connaisse aucun site particulier que vous puissiez jeter un projet complet pour une revue de code - vous pouvez mettre des extraits de ce que vous envisagez de penser à CODEREVIEW.STACKEGANGE pour leur lecture et leur commentaire, puis prenez-la à bord et d'appliquer ailleurs, le cas échéant.
Alternativement, vous pouvez écrire des trucs openSource et la jeter sur GitHub (ou équivalent). La communauté Open Source va certainement critiquer votre travail et l'améliorera où ils se trouvent en forme.
À la fin de la journée, si les produits que vous produisez des travaux comme prévu, répondez aux exigences de l'entreprise et êtes responsable - vous faites quelque chose de bien.
Pour les questions de programmation conceptuelles, les modèles, etc. Vous pouvez toujours poster ces questions ici sur PSE et pour les problèmes de mise en œuvre du code.
Le moi partage mon avis, quelques mots de sagesse et quelques questions à réfléchir.
Être un programmeur expérimenté, j'ai trouvé au fil des ans que le meilleur code est celui qui est simple (regarder KISS concept) et plus facile à modifier par un autre programmeur.
En outre, laissant un espace suffisant pour le code ne pas être congestionné (espace respirant) et uniformément structuré. Utilisez une convention de dénomination bien connue pour vos variables, ce qui leur donne des noms compréhensibles (qu'un autre programmeur peut comprendre) et écrire des commentaires qui sont au point, pas trop et pas trop peu.
Si vous suivez ce qui précède, vous êtes déjà sur une bonne route.
De plus, étant donné que les développeurs ressemblent à des architectes, je vous donnerai un dicton très important que vous devriez réfléchir à;
et
Cependant,
Avec ce qui précède, je veux que vous compreniez qu'il existe un bon équilibre entre effort et effet, coût et qualité.
Et les questions à réfléchir;
Je suis dans une situation similaire que vous avez été embauchée en tant que programmeur unique pour une entreprise de 5 personnes, et une seule d'entre elles est directement impliquée dans les applications que je développe/en ajoutant. Heureusement, je n'avais rien à créer de rien à partir de zéro, mais jusqu'à présent, seulement des applications modifiées mon prédécesseur construit. Ce faisant, je crois que je me suis déjà amélioré en reconnaissant quelles parties de son code étaient bonnes, quelles parties étaient mauvaises et comment on pourrait les améliorer.
Le code de lecture est une grande partie de l'amélioration de votre propre codage, donc surtout que je vous suggère de rechercher vous-même un projet open-source, de lire le code, de la comprendre et d'essayer de juger ce qui est bon, ce qui est mauvais et ce qui pourrait être amélioré. Peut-être même écrire une critique de code sur votre blog.
À votre santé!
Vous voudrez peut-être vérifier https://codereview.stackexchange.com/
Ce serait un endroit idéal pour obtenir des commentaires sur votre code ou votre conception provenant de professionnels chevronnés.
Continuez à lire des livres, des blogs et une empilement de pile Q & A. Si vous voulez vous améliorer de manière plus sociale, pourquoi ne pas engager de travailler sur un projet open source? Je ne veux pas dire créez votre propre projet, mais travaillez sur un existant.
Comme vous êtes le seul développeur de cette société, j'imagine qu'il serait possible qu'un jour, vous embaucherez quelqu'un d'autre. Dites-vous que ce jour-là, le gars devra lire votre code. Donnez-vous déjà une documentation sur votre outil? Gardant à l'esprit que votre travail peut être lu par d'autres personnes est une bonne chose pour les développeurs solo et vous aider à faire un meilleur code.