
Heute gratulieren wir den Menschen, die tĂ€glich dafĂŒr sorgen, dass die Welt ein bisschen mehr Ordnung hat â den Testern. An diesem Tag eröffnet GeekUniversity von Mail.ru Group fĂŒr diejenigen, die sich den Reihen der KĂ€mpfer gegen die Entropie des Universums anschlieĂen wollen. Das Kursprogramm ist so gestaltet, dass man den Beruf âSoftware-Testerâ von Grund auf erlernen kann, selbst wenn man zuvor in einem ganz anderen Bereich gearbeitet hat.
Wir veröffentlichen auch die Geschichte der GeekBrains-Studentin Maria Lupandina (). Maria ist Doktorin der technischen Wissenschaften mit dem Schwerpunkt âAkustikâ. Derzeit ist sie Software-Tester in einem groĂen IngenieurbĂŒro, das Software fĂŒr medizinische Einrichtungen entwickelt.
In meinem Artikel möchte ich die Möglichkeit eines ziemlich drastischen Karrierewechsels aufzeigen. Bevor ich Tester wurde, hatte ich nicht viel Kontakt mit Informationstechnologien, abgesehen von den Aspekten, die fĂŒr meine frĂŒhere Arbeit notwendig waren. Doch unter dem Druck verschiedener Faktoren, ĂŒber die ich im Folgenden ausfĂŒhrlich berichten werde, entschloss ich mich, den wissenschaftlichen Bereich zu verlassen und in die reine IT zu wechseln. Es hat geklappt, und jetzt kann ich meine Erfahrungen teilen.
Wie alles begann: Technologie trifft Wissenschaft
Nach dem Abschluss der UniversitĂ€t im Bereich âbiomedizinische Technikâ begann ich als Laboringenieur in einem Industrieunternehmen zu arbeiten. Es war eine ziemlich interessante Arbeit, zu meinen Aufgaben gehörten das Messen und Ăberwachen der Produktparameter des Unternehmens sowie der Rohstoffe in verschiedenen Phasen der Produktion.
Ich wollte ein guter Fachmann werden, deshalb vertiefte ich mich allmĂ€hlich in die Produktionstechnologien und erlernte angrenzende Berufe. Zum Beispiel, als es notwendig wurde, erlernte ich die Methode zur DurchfĂŒhrung chemischer Analysen zur QualitĂ€tskontrolle von Wasser, wobei ich als Quellen staatliche Standards und branchenĂŒbliche Vorschriften nutzte. SpĂ€ter brachte ich diese Methode anderen Laboranten bei.
Gleichzeitig bereitete ich meine Doktorarbeit vor, die ich erfolgreich verteidigte. Nachdem ich bereits Doktorandin war, gelang es mir, einen groĂen Zuschuss von der Russischen Stiftung fĂŒr Grundlagenforschung (RFBR) zu erhalten. Zur gleichen Zeit wurde ich als Dozentin an die UniversitĂ€t mit einem Teilzeitumfang von 0,3 geladen. Ich arbeitete an den Projekten des Zuschusses, entwickelte LehrplĂ€ne und methodische Materialien fĂŒr die FĂ€cher an der UniversitĂ€t, publizierte wissenschaftliche Artikel, hielt Vorlesungen, leitete Praktika und entwickelte PrĂŒfungen sowie Tests fĂŒr das elektronische Bildungssystem. Das Unterrichten machte mir groĂe Freude, aber leider endete der Vertrag und meine Karriere als Mitarbeiterin der UniversitĂ€t ebenfalls.
Warum? Einerseits wollte ich meinen Weg in der Wissenschaft fortsetzen, zum Beispiel als Dozentin arbeiten. Das Problem war, dass der Vertrag befristet war, und ich es nicht schaffte, mich an der Hochschule zu etablieren â ein neuer Vertrag wurde mir leider nicht angeboten.
Gleichzeitig kĂŒndigte ich bei der Firma, weil ich entschied, dass ich etwas Ă€ndern musste, denn mein ganzes Leben als Ingenieurin im Labor zu verbringen, wollte ich nicht. Mir fehlte einfach die Möglichkeit, mich beruflich weiterzuentwickeln, und ich hatte dort keine Wachstumschance. Die Firma war klein, so dass man nicht von einer Karriereleiter sprechen konnte. Zu den fehlenden Karriereaussichten kam ein niedriger Lohn, der ungĂŒnstige Standort des Unternehmens und die hohe Unfallgefahr in der Produktion. Das ergab ein ganzes Problemkomplex, den ich einfach durchschneiden musste, wie den gordischen Knoten, das heiĂt â ich musste kĂŒndigen.
Nach der KĂŒndigung ging ich auf freie Arbeiten ĂŒber. So entwickelte ich auf Auftrag Projekte in der Radiotechnik, Elektrotechnik und Akustik. Insbesondere entwarf ich paraboloide Mikrowellenantennen und entwickelte eine gedĂ€mpfte akustische Kammer zur Untersuchung der Parameter von Mikrofonen. Es gab viele AuftrĂ€ge, aber ich wollte dennoch etwas anderes. Eines schönen Tages wollte ich versuchen, meine FĂ€higkeiten als Programmiererin auszuprobieren.
Neue Ausbildung und Freelancing
Eines Tages fiel mir eine Werbung fĂŒr die Kurse von GeekBrains ins Auge und ich beschloss, es auszuprobieren. Zuerst absolvierte ich den Kurs âGrundlagen der Programmierungâ. Ich wollte mehr, also machte ich auch die Kurse âWeb-Entwicklungâ, wobei das erst der Anfang war: Ich erlernte HTML/CSS, HTML5/CSS3, JavaScript, nach dem ich begann, Java in den Kursen âDas Lernen war eine groĂe Herausforderung fĂŒr meine KrĂ€fte â nicht weil der Kurs kompliziert ist, sondern weil ich oft mit einem Kind auf dem Arm lernen musste.
Warum gerade Java? Ich habe immer wieder gehört, dass es eine universelle Sprache ist, die man beispielsweise in der Webentwicklung verwenden kann. AuĂerdem habe ich gelesen, dass man, wenn man Java kennt, auf jede andere Sprache umsteigen kann, wenn es notwendig wird. Das hat sich als wahr herausgestellt: Ich habe Code in C++ geschrieben, und er hat funktioniert, obwohl ich nicht zu tief in die Grundlagen der Syntax eingetaucht bin. Das Gleiche galt fĂŒr Python, ich habe ein kleines Webseiten-Parser-Tool damit geschrieben.

Manchmal musste ich so arbeiten â das Kind in die Tragehilfe setzen, ein Spielzeug geben und hoffen, dass das ausreicht, um den nĂ€chsten Auftrag auszufĂŒhren.
Sobald ich ein gewisses Wissen und Programmiererfahrung hatte, begann ich AuftrĂ€ge im Freelancing zu erledigen. So habe ich eine App zur Verwaltung persönlicher Finanzen und einen Texteditor auf Bestellung geschrieben. Was den Editor betrifft, er ist einfach, hat einige grundlegende Funktionen zur Textformatierung, erfĂŒllt aber seinen Zweck. AuĂerdem habe ich Textverarbeitungsaufgaben gelöst und mich mit dem Layout von Webseiten beschĂ€ftigt.
Ich möchte betonen, dass das Lernen von Programmierung meine Möglichkeiten und meinen Horizont insgesamt erweitert hat: Ich kann nicht nur Programme auf Bestellung schreiben, sondern arbeite auch an Projekten fĂŒr mich selbst. Zum Beispiel habe ich ein kleines, aber nĂŒtzliches Programm geschrieben, das erkennt, ob jemand meine Artikel auf Wikipedia verĂ€ndert. Das Programm parst die Seite mit dem Artikel, findet das Datum der letzten Ănderung und wenn das Datum nicht mit dem Datum ĂŒbereinstimmt, an dem ich meinen Artikel zuletzt bearbeitet habe, erhalte ich eine Benachrichtigung. AuĂerdem habe ich ein Programm fĂŒr die automatische Berechnung der Kosten fĂŒr so ein spezifisches Produkt wie Arbeitskraft geschrieben. Die grafische BenutzeroberflĂ€che des Programms wurde mit der JavaFX-Bibliothek erstellt. NatĂŒrlich habe ich ein Tutorial verwendet, aber den Algorithmus habe ich selbst entwickelt, und zur Umsetzung wurden Prinzipien der objektorientierten Programmierung und das MVC-Entwurfsmuster verwendet.
Freelancing ist gut, aber BĂŒroarbeit ist besser.
Insgesamt hat mir das Freelancing gefallen, da man Geld verdienen kann, ohne das Haus zu verlassen. Das Problem liegt jedoch in der Anzahl der AuftrĂ€ge. Wenn es viele gibt, ist alles in Ordnung mit dem Geld, aber es gibt auch dringende Projekte, bei denen ich bis spĂ€t in die Nacht im Eilmodus arbeiten musste. Wenn es wenige Auftraggeber gibt, spĂŒrt man das BedĂŒrfnis nach Geld. Die Hauptnachteile des Freelancings sind die unregelmĂ€Ăigen Arbeitszeiten und das schwankende Einkommensniveau. All dies wirkte sich natĂŒrlich auf die LebensqualitĂ€t und den allgemeinen psychologischen Zustand aus.
Ich kam zu der Erkenntnis, dass eine offizielle Anstellung mir helfen wĂŒrde, die genannten Probleme loszuwerden. Ich begann, Stellenangebote auf spezialisierten Websites zu suchen, und entwickelte einen guten Lebenslauf (danke an die Dozenten â oft habe ich mich mit ihnen beraten, was im Lebenslauf angegeben werden sollte und was besser im persönlichen GesprĂ€ch mit potenziellen Arbeitgebern erwĂ€hnt werden könnte). WĂ€hrend meiner Suche erledigte ich Tests, einige waren recht schwierig. Die Ergebnisse fĂŒgte ich meinem Portfolio hinzu, das schlieĂlich recht umfangreich wurde.
Letztendlich gelang es mir, als Tester in ein Unternehmen einzutreten, das sich mit der Entwicklung medizinischer Informationssysteme zur Automatisierung des Dokumentenverkehrs in Gesundheitseinrichtungen beschĂ€ftigt. Bei der Jobsuche half mir mein Hochschulabschluss im Bereich "Biomedizinische Technik" sowie Kenntnisse und Erfahrungen in der Softwareentwicklung. Ich wurde zu einem VorstellungsgesprĂ€ch eingeladen und erhielt schlieĂlich die Stelle.
Jetzt besteht meine Hauptaufgabe darin, die von unseren Programmierern geschriebenen Anwendungen auf ihre Robustheit zu ĂŒberprĂŒfen. Wenn die Software die PrĂŒfung nicht besteht, muss sie ĂŒberarbeitet werden. AuĂerdem ĂŒberprĂŒfe ich die Nachrichten von Nutzern des Systems meiner Firma. An der Lösung verschiedener Probleme arbeitet eine ganze Abteilung, und ich bin ein Teil davon. Die von unserem Unternehmen entwickelte Plattform ist in KrankenhĂ€usern und Arztpraxen implementiert, und wenn es Schwierigkeiten gibt, senden die Nutzer eine Anfrage zur Problemlösung. Diese Anfragen bearbeiten wir. Manchmal wĂ€hle ich selbst die Aufgabe aus, an der ich arbeiten möchte, manchmal berate ich mich auch mit erfahrenen Kollegen bezĂŒglich der Aufgabenauswahl.
Nachdem die Aufgabe festgelegt wurde, beginnt die Arbeit. Um das Problem zu lösen, klĂ€re ich die Herkunft des Fehlers (denn es besteht immer die Möglichkeit, dass die Ursache menschlicher Natur ist). Nachdem ich alle Details mit dem Kunden geklĂ€rt habe, erstelle ich ein technisches Lastenheft fĂŒr den Programmierer. Sobald die Komponente oder das Modul bereit ist, teste ich sie und implementiere sie im System des Kunden.
Leider mĂŒssen die meisten Tests manuell durchgefĂŒhrt werden, da die EinfĂŒhrung von Automatisierung ein komplexer GeschĂ€ftsprozess ist, der eine solide BegrĂŒndung und sorgfĂ€ltige Vorbereitung erfordert. Dennoch habe ich einige Automatisierungstools kennengelernt. Zum Beispiel die Junit-Bibliothek, um einen bestimmten Block ĂŒber die API zu testen. AuĂerdem gibt es das Framework Twin von ebayopensource, das es ermöglicht, Skripte zu schreiben, die Benutzereingaben imitieren, sehr Ă€hnlich wie Selenium, das im Web verwendet wird. AuĂerdem habe ich das Cucumber-Framework erlernt.
Mein Einkommen am neuen Arbeitsplatz hat sich im Vergleich zum Freelancing verdoppelt â was gröĂtenteils daran liegt, dass ich Vollzeit arbeite. Ăbrigens, laut Statistiken von hh.ru und anderen Quellen liegt das Gehalt eines Entwicklers in Taganrog zwischen 40.000 und 70.000 Rubel. Insgesamt stimmen diese Daten mit der RealitĂ€t ĂŒberein.
Der Arbeitsplatz ist mit allem Notwendigen ausgestattet, das BĂŒro ist gerĂ€umig, es gibt viele Fenster und immer frische Luft. AuĂerdem gibt es eine KĂŒche, eine Kaffeemaschine und natĂŒrlich Kekse! Das Team ist ebenfalls groĂartig, es gibt in dieser Hinsicht ĂŒberhaupt keine negativen Aspekte. Gute Arbeit, Kollegen, was braucht ein Programmierer und Tester mehr fĂŒr sein GlĂŒck?
Ich möchte gesondert erwĂ€hnen, dass das BĂŒro des Unternehmens in Taganrog ist, meiner Heimatstadt. Hier gibt es viele IT-Unternehmen, sodass es viele Möglichkeiten gibt. Bei Bedarf könnte ich nach Rostov ziehen â dort gibt es mehr Möglichkeiten, aber bislang plane ich keinen Umzug.
Was folgt jetzt?
Bis jetzt gefĂ€llt mir, was ich habe. Aber ich habe nicht vor, mich auszuruhen â daher lerne ich weiter. In der Warteschlange steht der Kurs "JavaScript. Niveau 2", den ich unbedingt beginnen werde, sobald ich mehr freie Zeit habe. Ich wiederhole regelmĂ€Ăig die bereits gelernten Materialien, zusĂ€tzlich schaue ich mir Vorlesungen und Webinare an. ErgĂ€nzend dazu nehme ich an einem Mentorenprogramm bei GeekBrains teil. So haben Studierende, die die Kurse erfolgreich abgeschlossen haben und wĂ€hrenddessen ihre Hausaufgaben eingereicht haben, die Möglichkeit, Mentor fĂŒr andere Lernende zu sein. Der Mentor beantwortet Fragen und hilft bei den Hausaufgaben. FĂŒr mich ist das auch ein Wiederholen und Festigen des gelernten Materials. In meiner Freizeit, wann immer ich die Möglichkeit habe, löse ich Aufgaben von solchen Ressourcen wie ,,.
Ich arbeite auch an einem Kurs zur Android-Entwicklung, der von Dozenten der ITMO durchgefĂŒhrt wird. Diese Kurse sind kostenlos, bei Interesse kann man eine kostenpflichtige PrĂŒfung ablegen. Ich möchte betonen, dass das Team von ITMO den Weltmeistertitel bei Programmierwettbewerben hĂ€lt.
Einige RatschlĂ€ge fĂŒr alle, die sich fĂŒr Programmierung interessieren
Da ich bereits Erfahrung in der Entwicklung habe, möchte ich denen raten, die in die IT gehen möchten, nicht kopfĂŒber ins kalte Wasser zu springen. Um ein guter Spezialist zu werden, muss man fĂŒr sein Fach brennen. Und dafĂŒr sollte man den Bereich wĂ€hlen, der einem wirklich gefĂ€llt. GlĂŒcklicherweise gibt es dazu nichts Kompliziertes â im Internet gibt es zahlreiche Bewertungen und Beschreibungen zu jedem Bereich der Entwicklung, jeder Programmiersprache oder jedem Framework.
AuĂerdem sollte man bereit sein, kontinuierlich zu lernen. Ein Programmierer darf nicht stehen bleiben â das wĂ€re gleichbedeutend mit einem beruflichen Tod, allerdings nicht physisch, sondern professionell. Wenn Sie dazu bereit sind â dann los, warum nicht?
Quelle: habr.com
