Je travaille actuellement en tant que stagiaire dans une très grande entreprise de développement de logiciels. Le poste pour lequel je postulais n'était pas spécifiquement un poste de développement, mais l'équipe qui m'a embauché souhaitait qu'une spécialisation majeure en informatique puisse l'aider à développer des projets internes. Cela fait quatre semaines que je suis ici et la confusion initiale commence à s'estomper. Cependant, je suis le seul spécialiste majeur de CS dans l'ensemble du bureau. Personne dans mon équipe, dans le bâtiment ou même dans les sites voisins n'a d'expérience dans le développement de logiciels. Le meilleur que j'ai est un gestionnaire de base de données, et leur département est trop occupé pour me soutenir dans mes projets. Mes coéquipiers m'aident à apprendre comment ils font leur travail (ce qui est important pour moi pour faire mon travail), mais il n'y a personne pour m'aider à faire mon travail, à savoir le développement.
Les projets qu'ils m'ont donnés ont une portée plus grande que tout ce que j'ai fait à l'école. Cela, combiné au fait que je travaille seul et que je tente de développer des applications à partir de rien, sans aucune forme de guidage ni même d'objectifs clairement définis, m'inquiète beaucoup pour ma capacité à réussir. Je sais à peine où je devrais commencer et il me reste maintenant probablement moins de deux mois.
Je pense que je devrais apprendre le processus de développement logiciel, mais pour l’instant, c’est comme si je me sentais à l’aise. Ceci est particulièrement troublant pour moi car je ne suis pas très confiant avec mes compétences de développement. J'ai fait des recherches et enseigné moi-même, mais je n'ai que des bricoles. Ils attendent beaucoup de moi, mais je ne suis pas sûr de ma capacité à tenir les promesses. De toute évidence, je dois m'asseoir et parler à mes supérieurs hiérarchiques de la position dans laquelle je me trouve et j'ai l'intention de le faire le plus tôt possible (ils voyagent souvent et sortent du bureau).
Comment dois-je gérer cela? Ce stage sera terminé avant que je le sache, et je ne veux pas partir sans rien à montrer pour mon temps ici. Ils ne le veulent pas non plus, et ils sont toujours disponibles pour m'aider, mais sans connaissances en programmation, ils ne peuvent pas tout faire. J'ai peur de leur dire que je suis incapable de produire ce qu'ils veulent. Comment dois-je leur rapporter cela? Je vois des stagiaires en ingénierie se faire aider par d’autres ingénieurs et apprendre à faire leur travail, et j’ai l’impression de rester assis à ne rien faire. Tout conseil sur la façon de rectifier ma situation serait grandement apprécié.
Mise à jour
J'apprécie tous les commentaires utiles de tous, cela m'a aidé à me détendre. La première chose que j'ai faite a été de rencontrer mes gestionnaires et mes superviseurs. Nous avons discuté de ce qui était attendu de mon séjour ici. Ils comprennent que je ne dispose pas de beaucoup de temps en tant que stagiaire et cela nous a permis de définir le type de cadre que nous souhaitons mettre en place, ce qui permettra aux futurs stagiaires ou employés de construire, espérons-le, ce que je laisse. J'ai également abordé mes préoccupations concernant mes capacités avec le temps imparti, qu'ils ont compris et prévu.
J'ai reçu un appel de l'administrateur de la base de données à un autre endroit. Mon responsable a parlé à son superviseur et ils vont soutenir mon projet. Ce dernier va maintenant me donner une ressource à utiliser. Je ne reste donc pas sans savoir ce que j'ai. Je fais. C'est seulement une moitié si. Parmi tous les projets possibles, nous avons limité les deux plus importants. En ce qui concerne mon autre projet, comme quelqu'un l'a mentionné, je suis essentiellement l'architecte logiciel en chef, ce qui est une situation unique pour un stagiaire. Si les choses vont au moins à moitié, je pense que j'aurai acquis beaucoup de connaissances et d'expérience qui pourront m'aider avec les futurs employeurs. Pour le moment, je pense avoir des bases solides pour commencer à rechercher et développer mes projets. Merci encore pour les réponses de tous!
la source
Réponses:
J'ai de mauvaises nouvelles pour vous bhamlin:
Vous n'êtes pas stagiaire. Vous êtes plutôt un employé non rémunéré / bon marché.
Un stage est un poste non rémunéré ou faiblement rémunéré dans lequel vous pouvez exercer vos compétences nouvellement acquises dans un environnement sûr et (généralement) détendu, et avoir la chance d'observer de «vrais» professionnels de votre domaine effectuant un «vrai» travail, tout en obtenant des commentaires. sur les pièces qu’ils vous permettent de modifier (généralement sous surveillance et / ou approbation).
Ce que votre entreprise souhaitait n’était pas en fait un stagiaire, mais plutôt une source de développement logiciel gratuite / bon marché. Ceci est assez commun , à mon avis. Je vis dans une ville universitaire et, à mon dernier lieu de travail, on entendait souvent des cadres dire: "Hé, le service informatique est trop occupé pour mener à bien le projet X, voyons si nous pouvons faire venir des stagiaires de l'université pour les écrire. gratuit / pas cher! " Nous râlions et grognions et grinçions des dents au ciel, mais c'était la réalité de l'endroit et je pouvais comprendre pourquoi les gérants suggéraient une telle chose. Malheureusement, les résultats n’ont pas été excellents: le logiciel fourni par les stagiaires n’a jamais été cohérent / évolutif / propre / etc. (mais pour être honnête, le matériel informatique n’a pas non plus été installé ...)
C'est à vous de voir ce que vous faites. Mon conseil est de développer tout ce que vous pouvez (parfois, la pression est un excellent facteur de motivation), MAIS vous devriez également envisager de faire un "vrai" stage ailleurs, lorsque celui-ci sera terminé si possible.
Alors ne vous en prenez pas à vous-même, mais ce dans quoi vous êtes entré n'était PAS un véritable stage.
la source
En tant que CS majeur, vous avez des compétences en résolution de problèmes. On ignore quel type de projets ils souhaitent développer. Si je devais deviner, ils voudront probablement que vous aidiez à automatiser certains des processus internes. Je commencerais par essayer d’obtenir un schéma complet des processus en place et des dépendances entre les services pour chacun de ces processus.
Ensuite, je rechercherais des solutions simples qui pourraient être automatisées ou au moins simplifiées.
Une manière infaillible de documenter tout processus
Posez ces questions dans l'ordre suivant:
Si la réponse au numéro 3 est NON , allez chercher les pièces manquantes. Cela pourrait être des formules ou des règles de gestion ou autre.
Si la sortie de la première étape est trop compliquée, divisez-la en morceaux gérables et attaquez chaque morceau en tant que processus séparé.
Documentez ce que vous avez découvert. Identifiez le point unique potentiel des échecs. Identifiez les faiblesses ou les dépendances rares.
Je sais que cela semble accablant, mais vous avez toutes les compétences. Il suffit de le transformer en morceaux de la taille d'une bouchée. Si vous pouvez apprendre à expliquer des "trucs de geek" en utilisant "un langage non-geek", alors vous valez votre pesant d'or.
la source
Voici mon point de vue sur toute cette situation: ils demandent plus que ce que vous pouvez raisonnablement accomplir, ne vous donnent aucun retour ou conseils, et rendent généralement votre travail moins agréable. Mais il y a une lueur d'espoir dans ce nuage Vous apprenez quelque chose.
En particulier, vous apprenez le type d’environnement dans lequel vous ne voulez PAS travailler lorsque vous obtenez votre diplôme. Vous apprenez également à gérer un projet trop ambitieux pour que vous puissiez le réaliser. Ces deux éléments sont des éléments de connaissance importants à conserver, car personne ne va vous donner un travail qui, à leur avis, est en deçà de vos capacités. Ils demanderont toujours plus que ce que vous pouvez donner, et votre travail consiste à travailler avec eux pour gérer les attentes et obtenir les résultats qu'ils souhaitent.
À propos de ce que vous pouvez faire ici et maintenant. Je commencerais par tenir un journal de tout ce que vous faites chaque jour. Cela vous donne la responsabilité. Même une simple fin de journée, "c’est sur quoi j’ai travaillé aujourd’hui", vous donnera l’avantage de vous reposer quand ils n’obtiennent pas ce qu’ils veulent et viennent chercher des réponses.
Je voudrais également parler à votre supérieur immédiat et voir s'il existe un moyen de décomposer l'un de ces grands projets . Si vous ne vous sentez pas à l'aise pour tout faire, ils vous demanderont peut-être simplement de faire des recherches et de définir l'architecture du projet, et peut-être qu'un autre stagiaire le mettra en œuvre plus tard. Faites simplement savoir ce que vous pensez pouvoir raisonnablement accomplir dans le temps qu'il vous reste dans le stage et faites-en votre objectif. De cette façon, vous livrez toujours quelque chose de pertinent à votre employeur en bout de ligne.
Enfin, voyez si vous pouvez rejoindre les stagiaires en ingénierie . Je vais supposer que ces stagiaires développent également des logiciels, et je ne vois aucune raison pour laquelle ce que vous faites et ce qu'ils font sont si séparés que vous ne pouvez pas apprendre les uns des autres. Je travaille avec mes ingénieurs électriciens, informaticiens, ingénieurs informaticiens et informaticiens, et chacun apporte sa propre force à l'équipe. Identifiez vos forces en matière de développement et essayez de démontrer pourquoi ces capacités se prêteraient bien à l'équipe d'ingénieurs.
la source
Parlez à votre conseiller de stage
Toutes les réponses que j'ai vues jusqu'à présent semblent se concentrer sur l'employeur, ce qui est important.
Cependant, vous devez avoir été mis en place avec ce stage via un programme ou un bureau de votre école. Je ne peux pas imaginer que vous soyez le premier étudiant à avoir vécu ce genre de situation. Ils devraient pouvoir vous guider dans une certaine direction.
Même s'ils ne peuvent pas vous aider maintenant (ce que je trouve difficile à croire), vous aiderez alors le prochain étudiant qui se trouve dans cette situation, qui ne doit pas être sous-estimée.
la source
J'ai eu deux stages de ce genre et les ai beaucoup aimés. Il semble que certains points brillants vous manquent:
Cela étant dit, s’attaquer à votre premier grand projet peut être une tâche accablante. Les éléments suivants peuvent aider:
Alors, détendez-vous, faites de votre mieux et apprenez le plus possible, qu'il s'agisse d'un logiciel ou non.
la source
Les autres réponses ici sont très bonnes, lisez-les encore et encore et essayez vraiment de les comprendre. Si vous le faites alors, avec un effort supérieur à la moyenne, vous pourrez sortir "vivant" de l'autre côté de votre stage. Compte tenu de votre situation, ce sera plus difficile que prévu, mais cela peut en valoir la peine.
Ceci est crucial car, lorsque vous postulez pour un poste dans une autre entreprise 1 , l'une des questions clés sera:
Si vous pouvez ensuite leur montrer que vous avez géré votre situation difficile de manière professionnelle, cela comptera BEAUCOUP , les employeurs sont généralement très impressionnés par quelque chose comme ça.
Même si c'est un peu nul, vous pouvez en faire une expérience précieuse grâce à laquelle vous aurez l'occasion d'apprendre ce que vos camarades de classe ne pourront jamais ...
1 = J'espère que vous allez y rester car il y aura un suicide professionnel (tôt ou tard ... probablement plus tôt)
la source
J'étais dans une situation similaire l'année dernière, où je devais tout développer à partir de zéro et je n'avais personne d'autre avec une expérience du développement. J'ai effectivement terminé le projet qu'ils m'ont confié, mais je n'appellerais pas cela une application sophistiquée ni même une application maintenable (car la seule personne qui sait comment cela fonctionne, c'est moi et personne au sein de l'entreprise n'a examiné le code.)
Voici certaines choses que j'ai faites et que je ferais si j'étais dans cette situation. Certains d'entre eux ont déjà été mentionnés dans les réponses précédentes
Comprendre:
Cela vous donnera une idée de ce à quoi le produit devrait ressembler. Dessinez ceci sur un morceau de papier et montrez-le à votre responsable / superviseur. Voyez ce qu'ils en disent. S'ils n'aiment pas cela, demandez-leur ce qu'ils veulent changer, changez-le et répétez le processus. S'ils l'aiment, faites le minimum de codage et créez une simple démonstration.
Montrez-leur la démonstration (demandez-leur si c'est ce qu'ils ont en tête), cela leur montrera vos progrès et vous aidera à comprendre ce qu'ils veulent.
Chaque fois que vous avez besoin d’aide en matière de codage, lisez les manuels / didacticiels, les recherches Google et publiez enfin un débordement de pile pour obtenir de l’aide.
Ne vous attardez pas sur de petits détails. Vous perdrez beaucoup de temps si vous faites cela.
Code en petits morceaux , chaque morceau étant une fonctionnalité majeure de l'application.
Commentez votre code. S'ils envisagent de transmettre cette information à un autre stagiaire ou à un employé, cela leur sera d'une grande aide.
Continuez à communiquer avec votre responsable / superviseur à propos du projet et de vos progrès.
Et ne vous inquiétez pas si vous ne pouvez pas terminer le projet, vous êtes un stagiaire et vous avez fait de votre mieux. Ils sont responsables de l'embauche d'une personne peu expérimentée pour un tel projet.
TL; DR
Communiquez avec votre responsable à chaque étape
Coder la fonctionnalité principale
Obtenir de l'aide de Google et échanger des piles
Ne vous inquiétez pas si vous ne pouvez pas finir
la source
Votre temps aiderait mieux votre entreprise si vous travailliez uniquement sur un petit projet. Assurez-vous de le garder bien documenté. Concentrez-vous sur la création d'une documentation utile concernant l'architecture, les objectifs du projet, l'avancement du projet et le code source.
la source