Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am a GIS Analyst at work that dabbles in python scripting in ArcGIS and the Google Maps JavaScript API V3.

My professional goal is to either be in web mapping development or desktop/server GIS application development.

I have seem to hit a plateau and I am not sure how to progress with my learnings or professionally to reach my goal.

I ask those of you out there that made the jump from technician/analyst how did you do it?

How can I land a job in web mapping/application development with little to no experience.


locked by PolyGeo Jun 4 at 3:15

This question's answers are a collaborative effort: if you see something that can be improved, just edit the answer to improve it! No additional answers can be added here

"How can I land a job in web mapping/application development with little to no experience." short answer: show you can do it! How's that done? see the excellent answers below :) – matt wilkie Jan 14 '11 at 16:24
  1. Pick a programming language (or maybe 2) and write a lot of code. I would recommend Python and JavaScript given your current skills

  2. Stop using the ESRI examples to learn how to program Python and look at pure python for a while. Do some spatial operations using PostGIS/SpatiaLite and Shapely

  3. Start thinking of yourself as a programmer who does spatial work and not a GIS analyst who does some programming

  4. Bite the bullet and write code for things that might be quicker through the GUI - without writing code you will never get better

  5. Follow and start to work on an open source project

  6. Volunteer to write code for somebody - without a deadline and a concrete project it is hard to get going

  7. Maybe take some programming classes - not a complete requirement but it might help

  8. Read programming blogs and the normal stackoverflow to learn and see how programmers think

  9. Get the book "Coders at work"

  10. Write and read a lot of code

  11. Remember that it takes about 10,000 hours to become and expert at something - so start writing code and reading code

[Update] Thought of a few more last night

  1. Be prepared to suck for a while - it is part of moving up the learning curve

  2. Stop using desktop GUIs - Especially for some of your more basic GIS tasks like intersections and such

  3. Did I mention you should write and read a lot of code?

+1 excellent answer! – radek Jan 13 '11 at 20:53
+1 for 'stop using the esri examples' several programming classes and open-source project involvement – WolfOdrade Jan 13 '11 at 21:27
This is great stuff, thank you for your insight! – Furlong Jan 13 '11 at 23:26
Great Answer.... +1 – Devils Dream May 14 '14 at 6:12

The other answers here offer some great insight and ideas for learning to develop. I’d like to add an additional piece of advice about actually “making the jump.” At my current job I was originally hired as a GIS tech mostly doing basic drafting, data entry, and routine analysis. Much of the work was tedious and repetitive and the more I work I did, the more areas I noticed could use some improvement. So over time, I started writing code here and there to help speed things up or automate them. I started sharing these tools with other employees and asking what else they thought might be useful. It wasn’t long until my supervisors noticed and started shifting my responsibilities toward application development. Ultimately my position was reclassified and now my primary responsibilities are creating desktop and web applications for the department.

In your position, my advice would be to start creating scripts and tools and share them with others around you. Use the information others have given here to broaden your development skills so that you can offer increasingly more powerful solutions to your coworkers. Over time, your services as a developer will become more in demand as they have a positive influence on productivity of your workplace. And while this may not result in a change at your current job, you’ll still be getting solid experience that can translate into another job down the road - one that is perhaps more developer oriented.

Good luck!


I have to admit, in terms of web mapping apps, its a lot more desirable to hire someone who has a solid background in web development, and teach them the basics of GIS, than it is to hire a expert in GIS and try to train them in web development.

HOWEVER, this would be my check list on how to make the move:

  • Keen to learn / have a passion for GIS and can understand that it is moving away from traditional hard published formats and more to things like web mapping/augmented reality/etc, then that is all you need. That and some time...

  • Advance your Google Maps development and become certified in it. Free and a big plus point for your CV. Can also do the same with Bing SDK (costs some money though)

  • Take a look at the Esri Web Certification - Get this on your CV and you will be quite desriable.

  • Understand the basics, partic CSS/Javascript/HTML.

  • Expose urself to a little bit of everything. Have a dabble in OpenLayers, Esri's Flex/Silverlight/Javascripts APIs. Try out some of the new HTML5 stuff.

  • Try all the Esri samples, break them apart, get them to work with your services, watch tutorials, suck up as much info as u can.

Then once you feel like you know that you could take on a role as a web mapping developer, put together an online portfolio showcasing some of your work. Create loads of dummy web apps. This would certainly attract me into looking at employing you.

Another great comment with good information, thank you! – Furlong Jan 13 '11 at 23:26
A point to think about, right now many employers are not really looking at the ESRI Certs as highly valued, the goal with having GISCI look at them as a benifit is good but employers still don't see them as being as valuable as a MCSE/MCSD or CNE/CNE. – D.E.Wright May 27 '11 at 5:11

As you have found scripting is a good way to get interested into programming. However, if you want to get into desktop/server development with ArcGIS you're going to need to learn some new programming languages.

In ArcGIS the two main languages used are VB.NET and C#.NET. Get a copy of Visual Studio and try and create an application.

If you have ArcGIS 10, Add-In's are a good way to learn how to extend ArcGIS with ArcObjects.

There are plenty of resources to get started, e.g:

Once you get a handle on desktop development you can use these same languages with ArcGIS Server.

Hope that helps.


Not the answer you're looking for? Browse other questions tagged or ask your own question.