Karrierewechsel vom GIS-Techniker / -Analytiker zum GIS-Webkarten-Entwickler / -Programmierer?

33

Ich arbeite als GIS-Analyst und beschäftige mich mit Python-Skripten in ArcGIS und der JavaScript-API V3 von Google Maps.

Mein berufliches Ziel ist entweder die Entwicklung von Webmaps oder die Entwicklung von Desktop- / Server-GIS-Anwendungen.

Ich habe anscheinend ein Plateau erreicht und bin mir nicht sicher, wie ich mit meinem Lernen oder beruflich vorankommen soll, um mein Ziel zu erreichen.

Ich frage die von Ihnen, die den Sprung vom Techniker / Analytiker gemacht haben, wie haben Sie das gemacht?

Wie kann ich einen Job im Bereich Web Mapping / Anwendungsentwicklung mit wenig bis gar keiner Erfahrung bekommen?

PolyGeo
quelle

Antworten:

45

Diese Frage wurde in Community-Wiki konvertiert und durch Wiki gesperrt, da es sich um ein Beispiel für eine Frage handelt, die nach einer Liste von Antworten sucht und so beliebt zu sein scheint, dass sie vor dem Schließen geschützt ist. Dies sollte als Sonderfall behandelt werden und nicht als die Art von Frage angesehen werden, die auf dieser oder einer anderen Stack Exchange-Site empfohlen wird. Wenn Sie jedoch mehr Inhalt dazu beitragen möchten, können Sie dies tun, indem Sie diese Antwort bearbeiten .


  1. Wählen Sie eine Programmiersprache (oder vielleicht 2) und schreiben Sie viel Code. Ich würde Python und JavaScript unter Berücksichtigung Ihrer derzeitigen Kenntnisse empfehlen
  2. Stoppen Sie die Verwendung der ESRI-Beispiele, um zu lernen, wie man Python programmiert, und schauen Sie sich eine Weile reines Python an. Führen Sie einige räumliche Operationen mit PostGIS / SpatiaLite und Shapely durch
  3. Stellen Sie sich vor, Sie sind ein Programmierer, der räumliche Arbeit leistet, und kein GIS-Analyst, der programmiert
  4. Beißen Sie in die Kugel und schreiben Sie Code für Dinge, die möglicherweise schneller über die GUI zu erledigen sind - ohne das Schreiben von Code werden Sie nie besser
  5. Folgen Sie und beginnen Sie mit der Arbeit an einem Open Source-Projekt
  6. Freiwilliger, Code für jemanden zu schreiben - ohne eine Frist und ein konkretes Projekt ist es schwierig, loszulegen
  7. Nehmen Sie vielleicht ein paar Programmierkurse - keine vollständige Voraussetzung, aber es könnte helfen
  8. Lesen Sie Programmierblogs und den normalen Stackoverflow, um zu erfahren, wie Programmierer denken
  9. Holen Sie sich das Buch "Coders at work" und "Pragmatic Programmer, from Apprentice to Craftsman"
  10. Schreiben und lesen Sie viel Code
  11. Denken Sie daran, dass es ungefähr 10.000 Stunden dauert, um ein Experte für etwas zu werden - beginnen Sie also, Code zu schreiben und Code zu lesen
  12. Seien Sie bereit, eine Weile zu lutschen - dies ist Teil der Lernkurve
  13. Stoppen Sie die Verwendung von Desktop-GUIs - insbesondere für einige Ihrer grundlegenderen GIS-Aufgaben wie Schnittmengen und dergleichen
TheSteve0
quelle
19

Die anderen Antworten hier bieten einige großartige Einblicke und Ideen für die Entwicklung des Lernens. Ich möchte einen zusätzlichen Ratschlag hinzufügen, wie man wirklich „den Sprung macht“. Bei meinem derzeitigen Job war ich ursprünglich als GIS-Techniker angestellt, der hauptsächlich grundlegende Entwurfs-, Dateneingabe- und Routineanalysen durchführte. Ein Großteil der Arbeit war langwierig und wiederholte sich. Je mehr ich arbeite, desto mehr Bereiche sind verbesserungswürdig. Im Laufe der Zeit habe ich angefangen, hier und da Code zu schreiben, um Dinge zu beschleunigen oder zu automatisieren. Ich begann, diese Tools mit anderen Mitarbeitern zu teilen und zu fragen, was sie sonst noch für nützlich hielten. Es dauerte nicht lange, bis meine Vorgesetzten es bemerkten und begannen, meine Verantwortung auf die Anwendungsentwicklung zu verlagern.

In Ihrer Position würde ich raten, Skripte und Tools zu erstellen und sie mit anderen in Ihrer Umgebung zu teilen. Verwenden Sie die Informationen, die andere hier angegeben haben, um Ihre Entwicklungsfähigkeiten zu erweitern, sodass Sie Ihren Mitarbeitern immer leistungsfähigere Lösungen anbieten können. Mit der Zeit werden Ihre Dienstleistungen als Entwickler immer gefragter, da sie sich positiv auf die Produktivität Ihres Arbeitsplatzes auswirken. Und obwohl dies möglicherweise nicht zu einer Änderung Ihres aktuellen Jobs führt, werden Sie dennoch solide Erfahrungen sammeln, die sich später in einem anderen Job niederschlagen können - einem Job, der vielleicht eher auf Entwickler ausgerichtet ist.

Brenner256
quelle
11

In Bezug auf Web-Mapping-Apps muss ich zugeben, dass es viel wünschenswerter ist, jemanden einzustellen, der über einen soliden Hintergrund in der Webentwicklung verfügt, und ihm die Grundlagen von GIS beizubringen, als einen Experten für GIS einzustellen und zu versuchen, zu trainieren sie in der Webentwicklung.

Dies wäre jedoch meine Checkliste für den Umzug:

  • Sie möchten lernen , leidenschaftlich gerne GIS nutzen und verstehen, dass es sich von herkömmlichen, hart veröffentlichten Formaten wegbewegt und mehr auf Dinge wie Web-Mapping / Augmented Reality usw. konzentriert. Dann ist dies alles, was Sie brauchen. Das und einige Zeit ...

  • Verbessern Sie Ihre Google Maps-Entwicklung und lassen Sie sich darin zertifizieren . Kostenlos und ein großer Pluspunkt für Ihren Lebenslauf. Kann auch mit Bing SDK das Gleiche tun (kostet allerdings etwas Geld)

  • Werfen Sie einen Blick auf die Esri Web-Zertifizierung - Nehmen Sie diese in Ihren Lebenslauf auf und Sie werden begeistert sein.

  • Verstehen Sie die Grundlagen , insbesondere CSS / Javascript / HTML.

  • Setzen Sie sich ein bisschen von allem aus. Probieren Sie OpenLayers , die Flex / Silverlight / Javascripts-APIs von Esri . Probieren Sie einige der neuen HTML5- Inhalte aus.

  • Probieren Sie alle Esri-Beispiele aus, zerlegen Sie sie, lassen Sie sie mit Ihren Diensten arbeiten, sehen Sie sich Tutorials an und sammeln Sie so viele Informationen wie möglich.

Wenn Sie wissen, dass Sie eine Rolle als Web-Mapping-Entwickler übernehmen können, stellen Sie ein Online-Portfolio zusammen, in dem einige Ihrer Arbeiten vorgestellt werden. Erstellen Sie viele Dummy-Web-Apps. Das würde mich sicherlich dazu bewegen, Sie zu beschäftigen.

Simon
quelle
5

Wie Sie bereits festgestellt haben, ist Scripting eine gute Möglichkeit, sich für das Programmieren zu interessieren. Wenn Sie jedoch mit ArcGIS in die Desktop- / Server-Entwicklung einsteigen möchten, müssen Sie einige neue Programmiersprachen erlernen.

In ArcGIS werden hauptsächlich die Sprachen VB.NET und C # .NET verwendet. Holen Sie sich eine Kopie von Visual Studio und erstellen Sie eine Anwendung.

In ArcGIS 10 können Sie mithilfe von Add-Ins lernen, wie Sie ArcGIS mit ArcObjects erweitern.

Es gibt viele Ressourcen für den Einstieg, z. B. http://www.youtube.com/watch?v=qbvvFtRQWLY

Sobald Sie sich mit der Desktop-Entwicklung befasst haben, können Sie dieselben Sprachen mit ArcGIS Server verwenden.

Wayne Shelley
quelle