Wednesday, August 11, 2010

"How do I get a GIS job?"

I got this question from a recent grad and I'm not sure if I gave a good answer. Or, for that matter, if there is much advice that would help someone graduating into this job market. One theory going around is that timing like that can hurt forever.

This was my response:

What kind of GIS job do you want? I see the GIS field as roughly divided into administrative, technical, and special domain-specific knowledge areas. You can specialize and in some cases earn more, or diversify and be able to potentially apply for a larger number of positions. Everyone falls a little into all of these categories. Decide to what extent you wish to specialize, and in what area.

  1. Administrative
  2. Your project managers, leaders, and communicators. Even the nerdiest technical expert needs to be able to properly gather objectives and communicate requirements. The deeper you go into this, the more likely you will be delegating the actual GIS work.

    You get better at this by getting better at written and verbal communication in general. I don't feel exceptionally qualified to talk about leadership, though increasingly I have been thrust into project management work.

  3. Technical
  4. GIS is a technical field. If you lack technical skills in a technical field you should fully expect to be mocked. This area can actually be further subdivided into the people leaning toward system admin/computer janitor work and dedicated developers.

    I can recommend some fantastic books if you were interested in development - starting with The Pragmatic Programmer, CODE, Code Complete, and Programming Pearls. Just reading isn't enough, I would look into contributing to open source projects.

    For the GIS admin/analyst types, I'd recommend working through the entirety of the book GIS for Web Developers. You can go from nothing to managing an entire open source GIS stack (which is fairly similar to ESRI's in terms of architecture).

  5. Domain knowledge
  6. Geographic information systems are usually serving some greater business need such as the mandates of public agencies or the profit center of a private corporation. Specialized knowledge of those needs are a career in themselves, and the more you specialize in this the more that career becomes yours. People that fall closer to this area exist on the fuzzy line between actual GIS professional and being a professional in something else.

I'm not going to claim I am the best authority on this particular topic, but I've had success with this particular mindset. A good discussion on what skills you need for each can be found on the new GIS -StakeExchange website here: http://gis.stackexchange.com/questions/883/gis-development-skills

Posted via email from The Pragmatic Geographer

Wednesday, July 21, 2010

Geometric Network Geoprocessing

I've been hammering away at a GIS migration project that has been going on far longer than anyone expected it might take, but I've gotten the opportunity to hack away at some Python to more or less fix a problem I found on TheGISForum:

I currently have a geometric network that I've been working with using the Utility Network Analyst tools. However, I've been trying to perform a few tasks that I've noticed the Network Analyst tools provide, but the Utility Network Analyst does not.

Specifically, I want to place barriers at all locations specified by a point feature class - a functionality provided by the "Add Locations" tool in the Network Analyst Toolset.

Is there a way to use the network analyst tools on a geometric network?

The answer, sadly, is no. As far as I can tell, ESRI has not released any geoprocessing tools for their Geometric Network.

But it is possible to roll-your-own solution to get the same kind of tools by using existing open source libraries. I have a newbish work-in-progress project along these exact lines.

Posted via email from The Pragmatic Geographer

Wednesday, April 21, 2010

WAURISA 2010 Conference

The Washington URISA conference is just about over, and it's made me realize how long it has been since I've gotten a chance to interact with the local GIS community. Some impressions:
  • The panels were probably the best part. I see now why the Barcamp/Unconference model has become so popular. Unfortunate no one from ESRI/AutoDesk/etc participated in these as far as I can tell - just the local/state government representatives and open source guys.
  • Best talk I heard was from Aaron Racicot on haiticrisismap.org and OSM. Even if you came in knowing the story, the energy of the speaker, quality of maps, and audience participation was excellent.
  • I was happy to see there wasn't too much stigma hopping between rooms to hit particular talks as long as you were quiet and professional about it.
  • It was nice to shake hands with some Well Known Nerds (WKN) of the open source GIS community.
  • Some excellent balance in conversations about the variety of solutions to a given problem. No one was especially partisan about a particular product, software, or method.
  • Vendors were not as aggressive as I had been warned.
  • The turnout of the CUGOS group was good. I didn't seen any equivalent ESRI or AutoDesk user group wandering around in a similar fashion.
  • Smart people giving poor presentations is heartbreaking. I know this might ring hollow coming from someone who didn't give a talk, but some folks should thumb through Presentation Zen again. Walls of text all over the place.

Wednesday, March 31, 2010

Link Cleanup Time

First, an adorable picture General nerd stuff
Android iTouch killer? $155 is cheap. Looking seriously at this or the Dell Mini 5. Vendor's site.
MIX 10: what Microsoft is doing this year.
AI book worthy of a read.
The Hacker, Architect, and Superhero. Only problem with this is the sushi pictures making me hungry.

Some programming stuff
Function Dependency Inversion - something about currying. Something else about F#.
Usability and Python; why it is a pretty good language for beginners even though it has some conventions not used in too many other languages. Also here is PyYAML. I haven't looked at it but people in irc were all hyper about it.
Parallel Programming is hard? I was certainly under that impression.
Let them eat code cake; Ruby ActiveRecord stuff.
Google Clean Code talks.
Some design patterns from MS: Data Persistence, Unit Of Work. Also some LINQ for beginners.
Regular expressions for people that don't know them or could use a reminder.

It's me, I'm a data janitor
Database change management.

The Web!
REST and preventing race conditions.

Local Open source geo in the northwest.