Ich bin ein 21-jähriger Student aus Indien in meinen letzten Jahren des 4-jährigen Studiengangs Informatik und Ingenieurwesen.
Die Idee, dies zu schreiben, war zu sagen, dass Indien viel mehr als ein Outsourcing-Hub ist. Ich hoffe, der Westen sieht das so und anstatt Talente aufzunehmen, sollte der Westen mehr Drehkreuze in Indien errichten. Es gibt einige anstößige Inhalte, aber wenn Sie das größere Bild verstehen, werden Sie verstehen, was ich zu sagen versuche.
Die Bildung in Indien ist in einem sehr beunruhigenden Zustand, da jedes Jahr neue Arbeitskräfte mit keinen oder absolut entsetzlichen technischen Fähigkeiten ausgebildet werden. Das Bildungssystem ist in Bezug auf Innovation oder Unternehmertum überhaupt nicht wettbewerbsfähig. Dies hat unser Land in große Verlegenheit gebracht, wie zum Beispiel den kürzlich von Einheimischen entwickelten 10-Dollar-Computer (der sich als billiges chinesisches Android-Tablet herausstellte, das nur von einer indischen Firma gewartet wird) oder die Behauptung eines anderen technologischen Durchbruchs (der sich herausstellte) ein USB-Stick). Bildungseinrichtungen sind völlig von der realen Welt der Technologie abgekoppelt und mehr an der Neuerfindung des Rades durch Studenten interessiert, und das alles im Namen der Innovation. Bildungseinrichtungen, jeder hasst sie.
Kommen Sie an Orte, an denen Sie zumindest einige heiße Entwicklungsfähigkeiten erlernen möchten:
Abgesehen von meinen Bildungseinrichtungen hatte ich in Indien Kontakt zu einigen Ausbildungseinrichtungen. Programmierung und Softwareentwicklung erfolgen auf zwei Ebenen, der Entwicklung auf Anwendungsebene und der Entwicklung auf Systemebene .
Für die Anwendungsentwicklung werden die meisten Erstsemester in Indien von Unternehmen rekrutiert, um eine sitzende Bank von Programmierern zu beanspruchen und mehr Projekte zu erhalten. Letztendlich gibt es Qualitätseinbußen, weil der Einstellungsprozess völlig dumm ist. Manchmal wird Talent verschwendet, indem man Leute dazu bringt, gut mit ihren Sachen umzugehen, dumme Dinge wie das Erstellen von Java-Frames und das Erstellen einfacher WinForm- und ASP.NET-Benutzeroberflächen (Ich spreche von neueren Rekrutierungen und wie von einigen behauptet, obwohl ich nicht sicher bin). Wenn gute Software-Entwicklungspraktiken nicht berücksichtigt werden, kann diese Art der Codierung von einem 7. Schuljahr durchgeführt werden.
Gleichzeitig gibt es unabhängige Programmierer und Entwickler, die großes Interesse an Dingen haben. Sie sind wie die unbesungenen Helden, die alle Hoffnung verloren haben und am wenigsten daran interessiert sind, die Welt zu verändern. Alles, was sie wollen, ist, das Beste aus ihren Fähigkeiten herauszuholen. Es geht also nur ums Geld und darum, ins Ausland zu gehen. Während sich unsere Kurse stark auf Systemsoftware beschränken (C-Programmierung mit TurboC !!! für 4 verdammte Jahre), ist dummes und vages C ++ ohne richtige objektorientierte Konzepte mit cout in einem C-Programm kein C ++, ASM und mehr C-Programmierung mit gcc), wenn wir in einem Unternehmen hauptsächlich zur Anwendungsentwicklung (ASP.NET, WinForms, J2EE) eingesetzt werden. Grundsätzlich wird ein Informatiker dazu gebracht, die Arbeit eines Software-Ingenieurs zu erledigen. Ja, es hilft, wenn man weiß, dass Informatik hilft, aber wenn man nicht weiß, dass die richtige Softwareentwicklung den Prozess zu sehr behindert, sinkt das gesamte System. Es ist ein # Fehler.
Ich werde ein einfaches Beispiel anführen. Ich trat einem Ausbildungsinstitut für mein letztes Projektjahr bei und sie wollten, dass ich eine ASP.NET-Website erstellte, die so etwas wie ein Inventarsystem (Hotelbuchung, CRM) war. Ja, es ist keine leichte Aufgabe, aber meiner Meinung nach lohnt es sich nicht, an einem Projekt zu arbeiten. Es wird nur das Rad neu erfinden und diese Projekte sind von Natur aus im wirklichen Leben riesig. Geliefert in 6 Monaten durch eine Gruppe von 3, können Sie die Art des verkleinerten unbrauchbaren Systems verstehen, das daraus resultiert. Die Institute betonen nicht zu tief und sind mehr daran interessiert, "den Schüler nicht zu sehr zu erschrecken" und "einen Überblick zu geben und den Rest auf eigene Faust zu lernen". Am Ende ist das, was die Leute in Projekten entwickeln, nicht einmal ein vollständig getesteter Prototyp.
Ich nahm mein eigenes Thema auf, ein sprachgeführtes Echtzeit-Navigationssystem. Ich benutze WPF, Google Maps API und die neueste Technologie, die ich kann. Aus Gründen der guten Software-Engineering-Praxis verwende ich die Quellcodeverwaltung mit MVVM und werde mich eingehend mit allen anderen Aspekten befassen, die mir bekannt sind. Ich bin 21 Jahre alt und habe einen Abschluss. Ich denke, in meinem Alter befinden sich die Menschen im Westen noch in der Lernphase und werden in einem späteren Alter Absolventen. Das macht westliche Absolventen so viel besser und kenntnisreicher. Wir haben Quantität, aber keine Qualität.
In Indien wird von einem Bachelor-Abschlussprojekt im Allgemeinen nicht erwartet, wie viel Arbeit ich für mein Projekt leiste. Aber ich werde es tun, weil ich will. Zur gleichen Zeit gibt es andere in meiner Gruppe, die gerne ein Projekt in ASP.NET ausführen, 5-7 Seiten erstellen, Datenbankabfragen ausführen, Rasteransichten ausfüllen und sich keine Gedanken über die Sicherheit machen. Zur Hölle, auch diese freiberuflichen Websites haben bessere Stellenausschreibungen (YouTube-Klon, Google Instant + X = Y Mashup ..)
Sechs Monate später werden Sie die gleichen Mitarbeiter in einem Unternehmen finden, an das Sie Ihr Unternehmen auslagern, und Sie werden mich auch dort finden. Leute wie sie, mehr als ich, zehn zu 1 :(
Um genau zu sein und nicht zu schimpfen, habe ich in meiner gesamten Ausbildungskarriere und Bekanntschaft mit über 500 Leuten genau 4 gesehen, die über das Fachwissen verfügten, das ich für sie in Betracht ziehen würde, um mit mir an einem Projekt zu arbeiten.
Letztendlich werden alle indischen Absolventen eine gute Dokumentation schreiben, weil es sich um eine Theorie handelt, aber erwarten Sie keinen narrensicheren Code von ihnen.
Dasselbe gilt für die Systemsoftware. Ein Freund von mir arbeitet mit dem Android NDK und arbeitet an einem Live-Projekt in einem Unternehmen. Er hat das Glück, dieses Projekt zu haben, und ich beneide ihn, aber dieses Maß an Arbeit findet auch in Indien statt. Ein anderer Senior an meinem College entwickelte in seinem letzten Jahr einen Kinect-Klon (Multi-Touch-Maus, wie in Berichten von Minderheiten) mit nur zwei billigen Webcams. Ebenso gibt es andere, die Codes aus dem Internet kopieren und irgendwie das Rad neu erfinden.
Mein letztes Wort: Erwarten Sie keine Qualitätseinbußen in ganz Indien und betrachten Sie Inder nicht als billige Software-Betreuer, die nur für die Auslagerung von Wartungsarbeiten geeignet sind.
Erwarten Sie auch nicht, dass jemand, der eine gute Ausbildung in Bezug auf Noten hat, gute Software schreibt. Das indische Bildungssystem ist rein theoretisch orientiert, es gibt keinen Stress für die Praxis, manchmal kann das Wissen um mehr oder die Bereitschaft, mehr zu wissen, von eingeschüchterten Lehrern in Schwierigkeiten geraten. Trotzdem suchen gute Programmierer nach grüneren Weiden für eine bessere Karriere und nicht nur einen guten Job. Es gibt auch andere, die einen guten "Job" machen, durch eine Honda-Stadt fahren, auf dem chinesischen Festland essen und danach glücklich leben möchten .
Ich bin mehr in Audi BTW. :)