Salut tout le monde! Ma période d'essai dans mon nouvel emploi est terminée et je peux enfin partager mes antécédents professionnels. J'ai 22 ans, j'ai une formation économique. Il y a à peine un an (février - mars), je n'avais aucune compétence en programmation, et je ne rencontrais Java que dans les jeux sur les anciens Siemens (sous la forme d'une fenêtre de bienvenue "powered by Java" au démarrage du jeu). Il y a un an, je travaillais dans le département de support technique. Je ne dirais pas que le travail est mauvais ou que je ne l'aime pas, mais ce n'est pas particulièrement intéressant. Et il s'est avéré qu'à un moment donné, j'ai pensé : ce serait bien d'avoir un travail auquel on n'allait pas avec le sentiment de « putain, je vais travailler à nouveau », mais qui apportait du plaisir. Je me suis dit : que ferais-je si j’avais, disons, une année pendant laquelle je n’avais pas nécessairement à gagner d’argent et que je pouvais faire ce que je voulais ? La réponse est venue d'elle-même : je restais assis à la maison et j'apprenais à programmer. Ensuite, j'ai décidé que c'était à moi de décider. J'ai compris qu'il serait difficile d'apprendre la programmation à partir de zéro, que cela constituerait un revers temporaire dans ma carrière (je n'avais aucun doute sur le fait que le développeur junior recevait moins que moi à ce poste), mais j'ai pris cela comme un pas en arrière. afin de faire deux pas en avant. D'ACCORD. À peine dit que c'était fait. Comme je n'avais absolument aucune compréhension des langages de programmation, ma première idée a été d'étudier le langage dont j'avais le plus entendu parler (il était utilisé pour développer des logiciels dans l'entreprise où je travaillais) : PHP. OK, la fille m'en a dissuadé. Elle a suggéré que dans leur entreprise (développant des applications mobiles), les androïdes écrivent en Java + leur salaire semble bon. J'ai cherché et cherché sur Google, j'y ai réfléchi et j'ai décidé d'apprendre Java. Ma première étape a été les tentatives traditionnelles pour apprendre quelque chose de nouveau : armez-vous de livres, maîtrisez la théorie et c'est parti ! C'est ainsi que j'ai obtenu le livre de Horstmann et Cornell - Java. Les bases. C'était en mars 2014. D’une manière générale, toute ma vie, j’ai été désespérément mauvais pour étudier les choses dans les livres. Cela est probablement dû au mode de perception qui prédomine chez une personne. J'ai toujours vraiment appris le matériel seulement après l'avoir pratiquement travaillé, consolidé et joué avec. Par conséquent, mes premières tentatives d'apprentissage de JavaD’après le livre, ils étaient voués à l’échec. Le livre est bon cependant. Quelque part en avril, je suis tombé sur le groupe JavaRush VKontakte. Ensuite, tout s'est passé comme si c'était sur des rails. Résoudre des problèmes, beaucoup de problèmes, accompagné d'un peu de théorie est clairement la manière optimale d'apprendre la matière (du moins pour moi). Je me suis assis à la maison, je me suis assis au travail et j'ai décidé, décidé, décidé) C'est alors que j'ai été encore plus convaincu que la programmation m'intéressait. Je ne me souvenais pas d'avoir été aussi coincé sur quoi que ce soit. Trois mois se sont écoulés, durant lesquels j'ai atteint le niveau 20. Il m'a semblé que la poursuite de l'apprentissage des langues irait beaucoup plus rapidement si vous obteniez déjà un emploi de programmeur - vous seriez alors dans cet environnement 8 heures par jour, 5 jours par semaine et vous évolueriez extrêmement rapidement. Ainsi, en août, j’ai commencé à envoyer des CV. Quelques endroits m'ont envoyé des devoirs de test, à la suite desquels je n'ai reçu aucune offre d'emploi - avec le recul, je ne suis pas surpris une seule fois - j'ai peut-être résolu la tâche confiée, mais quel mauvais style de codage j'avais) B Soit dit en passant, c'est un petit inconvénient de JavaRush - tant que le problème est résolu et que les tests sont réussis, la tâche est comptée, même si votre code peut laisser beaucoup à désirer. Il suffit d'installer le même plugin Checkstyle dans Intellij IDEA, et la situation sera différente - cela mettra en évidence les points «douteux» du code, ce qui vous permettra d'écrire non seulement du code fonctionnel, mais aussi beau et correct. Quoi qu'il en soit, en septembre, j'ai été convoqué pour le premier entretien. Le poste vacant contenait approximativement ce qui suit - un développeur de tout niveau, nous proposerons un salaire correspondant aux compétences. Lors de cet entretien, les tâches étaient approximativement les suivantes : un fragment de code a été donné. Est-il écrit correctement et quels problèmes pourraient-il y avoir ? Je ne me souviens pas du nombre d'entre eux que j'ai réussi. En général, il fallait se rappeler de Null, presque toutes les questions portaient sur cela - que vous ne devriez pas accéder à un paramètre de méthode sans le vérifier au préalable (si param != null). Sur la base des résultats, on m'a proposé de travailler gratuitement le premier mois (sous forme de stage), puis un salaire inférieur (mais pas beaucoup) à celui du lieu de travail où j'étais. J'ai bien compris qu'il ne fallait pas s'attendre à de belles propositions, car je connaissais peu de théorie, je ne pratiquais que JavaRush, aucune expérience, etc. J’ai donc convenu de partir dans 2 semaines (le bon moment pour quitter mon ancien logement). En parallèle, j'ai soumis mon CV à une autre entreprise. Cette entreprise proposait ce qui suit :
- 2 mois de formation Java EE (2 fois par semaine pendant 4 heures)
- si vous affichez de bons résultats (vous défendez avec succès votre projet que vous rédigez depuis ces deux mois), alors un emploi vous est proposé.
- Faire des tâches pratiques à la maison.
- En cas de réussite, vous êtes invité à des tests informatiques au bureau.
- Si le test est réussi, vous serez interviewé le même jour.
- quelle est la différence entre les exceptions vérifiées et non vérifiées ;
- de quelles méthodes dispose la classe Object et pourquoi sont-elles nécessaires ;
- quels types de collections existe-t-il et pourquoi elles sont là ;
- et un peu sur le multithreading.
GO TO FULL VERSION