Article original : How to Hack Together Your Own CS Degree Online for Free
Par Randall Kanna
Je n'ai pas de diplôme en informatique, alors j'ai dû créer le mien.
Quand j'ai obtenu mon diplôme d'un bootcamp de codage il y a cinq ans, j'étais complètement mal préparée pour les entretiens techniques. Mon bootcamp de codage n'a pas seulement passé peu de temps (moins de quelques jours !) sur les algorithmes et l'entretien de codage, mais j'étais malade absent pendant cette période.
D'autres candidats postulant pour les mêmes emplois que moi avaient quatre ans d'études pour obtenir leur diplôme en informatique. J'avais trois mois dans un bootcamp où j'ai appris quelques concepts de base, Rails, et je m'étais enseigné Angular.js.
Au cours des dernières années, j'ai dû combler les lacunes de mes connaissances avec des ressources que je pouvais trouver en ligne et gratuitement. J'ai travaillé en tant qu'ingénieur senior pour des entreprises comme Eventbrite et j'ai même écrit un livre O'Reilly. Je suis la preuve que vous n'avez pas besoin d'un diplôme en informatique pour réussir en tant qu'ingénieur.
Voici comment j'ai fait.
Introduction à l'informatique
Avant de plonger dans des cours compliqués d'informatique, je recommande de commencer par un cours sur les bases. Cela vous aidera à avoir une vue d'ensemble solide et vous aidera également à vous sentir un peu moins intimidé. Si vous passez du temps à obtenir une vue d'ensemble solide, le reste de vos cours gratuits de diplôme en informatique sera beaucoup plus facile.
Mon cours préféré était CS50 : Introduction à l'informatique par Harvard.
C'est probablement l'un de mes cours préférés de tous les temps. J'ai toujours aimé l'idée de Harvard, alors c'était un peu une évidence pour moi de suivre un cours gratuit d'informatique là-bas. J'ai même brièvement envisagé de compléter l'une des certifications Harvard pour la programmation, mais c'était cher, alors je suis restée avec le cours gratuit CS50.
Je n'ai pas fini par obtenir le certificat avec Harvard CS50. Je pensais qu'il serait tout aussi puissant de lister le cours sur mon CV. Ma règle générale en ce qui concerne le paiement pour un certificat en ligne est que, sauf s'il s'agit d'un certificat AWS d'Amazon, il n'en vaut probablement pas la peine.
Si vous vous sentez intimidé à l'idée de commencer avec un cours de Harvard (ce qui était aussi mon cas !), vous pouvez trouver un cours plus facile en ligne pour vous sentir plus à l'aise avant de vous lancer dans des sujets compliqués.
Computer Science 101 est une introduction à l'informatique dès le début. Vous apprendrez comment fonctionne Internet, un peu sur la sécurité informatique, ce qu'est un gigaoctet, quelques connaissances en codage et plus encore.
Algorithmes
Commencez ensuite avec les algorithmes. L'Université de San Diego propose un cours gratuit, Spécialisation en structures de données et algorithmes, qui contient une quantité énorme de contenu disponible.
C'est écrasant si vous regardez l'ensemble de ce cours et pensez que vous devez le terminer tout de suite et tout comprendre. Essayez de vous concentrer sur une section à la fois et de réviser les concepts régulièrement.
Et si suivre un cours universitaire sur les structures de données et les algorithmes vous rend un peu malade, vous pouvez commencer petit.
Udacity propose un cours gratuit, Introduction aux structures de données et algorithmes. J'adore suivre des cours gratuits sur Udacity et celui-ci contient une tonne de grandes informations. Vous couvrirez les tableaux, les listes chaînées, les piles, la recherche binaire, les maps, les tas, et plus encore. Ce cours peut vous donner une excellente vue d'ensemble qui vous aidera à réussir dans le cours plus compliqué de l'Université de San Diego.
Si vous vous sentez courageux après avoir terminé un cours d'introduction, le MIT propose un cours sur les Structures de données avancées.
Systèmes d'exploitation
Udacity propose un contenu gratuit assez cool. Ils offrent une classe appelée Introduction aux systèmes d'exploitation qui provient de Georgia Tech. Ce cours vous guidera à travers les threads, la concurrency, les systèmes distribués et plus encore.
J'ai également découvert que le livre, Operating Systems: Three Easy Pieces, est disponible en ligne et gratuitement. Des livres comme celui-ci m'ont vraiment aidé à me sentir plus confiante pour parler de concurrency et de persistance.
Bases de données
Les bases de données m'ont complètement déconcertée quand j'ai commencé. J'ai essayé de les éviter autant que possible au début. J'ai demandé de l'aide à un ingénieur senior tout le temps et j'ai pensé que parce que je n'avais pas de diplôme en informatique, je ne devrais pas travailler avec une base de données.
Wow, j'avais tellement tort.
J'ai finalement eu le courage de travailler avec du code backend, et j'ai adoré découvrir comment je pouvais écrire des requêtes efficaces pour obtenir des données du backend et écrire des requêtes.
Stanford propose un cours en ligne gratuit sur les Bases de données. Et si c'est trop intimidant pour commencer, Udacity propose un cours gratuit sur les bases de données qui sera beaucoup plus facile à gérer.
Mathématiques
Quand j'envisageais un diplôme en informatique à l'université, tout le monde me disait que je devais être très bonne en maths. Je n'ai jamais obtenu le diplôme en informatique, et cinq ans plus tard, je n'ai pas encore eu besoin d'utiliser beaucoup de maths.
Mais les mathématiques peuvent vous enseigner la logique, ce qui, à son tour, peut vous aider à devenir un meilleur programmeur.
Heureusement, le MIT propose un cours de Mathématiques pour l'informatique gratuitement. Suivre un cours comme Mathématiques pour l'informatique peut également vous ouvrir à plus de possibilités dans la tech, comme créer votre propre diplôme en Machine Learning.
J'ai découvert le cours de Mathématiques pour l'informatique du MIT grâce à TeachYourselfCS, qui est un site web génial avec une tonne de ressources pour apprendre l'informatique.
TeachYourselfCS a également suggéré un cours sur l'Algèbre linéaire qui est disponible sur YouTube. J'adore le contenu gratuit, alors j'étais super heureuse de trouver ce livre sur l'Algèbre linéaire disponible en ligne gratuitement également.
Donc, comme vous pouvez le voir, vous n'avez pas besoin d'un diplôme en informatique pour être ingénieur. Certains des ingénieurs les plus intelligents avec qui j'ai travaillé n'avaient pas de diplôme en informatique. Parfois, ils n'avaient aucun diplôme du tout.
Ne vous inquiétez pas si vous n'avez pas de diplôme. Vous devez simplement être capable de faire le travail.
J'écris un livre sur la façon dont vous pouvez devenir un développeur exceptionnel, réussir l'entretien et obtenir un emploi. Découvrez-en plus ici.