I'm a CS major who is minoring in GIS to become a GIS Developer. I was wondering what later CS (or Software Engineering and Computer Engineering) courses would be useful to a GIS Developer?

For the major, I have to take CS1, CS2, Design Patterns (Software Enginering 101), Computer Organization (Comp Engineering 101), Data Structures/Algorithms, Operating Systems, and Database Management.

What more classes will be most useful in CS to a GIS Dev, 3 of the following?

I have options of Web Programming, Intro to Computer Graphics, Adv Computer Graphics, Computer Graphic Algorithms, Compiler Design, Networks, more Software Engineering courses, or more Computer Engineering?

My advisor doesn't know much about GIS, and I haven't taken any GIS courses yet so I don't know any GIS professors (next semester I will start).

I just need help future planning because if I do the wrong sequence, I could screw myself over prereq wise since some of these have weird offerings like fall of even years or spring of odd years etc.

  • Don't know much about these courses and a syllabus might help to understand more. Just from the topics - I guess web design would be helpful. Then I think you should tour this site and see what people are asking about; it might show you the way. It would be easier to navigate using tabs, i.e C#, Python, .NET etc. – dof1985 Mar 23 '15 at 21:44
  • 1
    This question is a bit broad for GIS.SE. We do have some similar questions (gis.stackexchange.com/search?q=education+programming) though I'm not sure if any would be exact duplicates. As dof1985 suggested, web would be first and 'more software engineering' would be second with exposure to languages you can find referenced here. – Chris W Mar 23 '15 at 21:59
  • 2
    I'd posit that this was too opinion-based, and unlikely to have a single right answer. As a Geography major who minored in CS (and later picked up a CS Master's degree), I've had the solemn duty to turn away CS majors who asserted they could "code anything" in favor of folks who knew enough about geospatial operations to be of use to a commercial GIS entity. Algorithms and data structures (especially file-based data structures) are all well and good, but it's "Software Engineering applied to ..." that makes candidates interesting. – Vince Mar 24 '15 at 1:55
  • 1
    Definitely an opinion based question, but as others have pointed out looking into .NET and Python would be good for desktop and Runtime devleopment, and I would also add taking courses on web development (JavaScript/HTML5 in particular) would be very marketable. – crmackey Mar 24 '15 at 3:34

Except for the geomatics fundamentals, GIS development is like almost any other application development domain. You need the core courses you mention, plus, Web Programming and Computer Graphics, from your list. Other common basics should include Mathematics and Statistics.

You do not state what Geomatics courses, if any, you have at your disposal. Since this is your stated business domain, here are some foundations: Surveying, Cartography, Geodesy, Remote sensing, and, of course, GIS itself.

The essential common concept throughout is Coordinate Systems and the associated transformations and map projections. (Many programmers come here asking for "the formula" for them to code but they know nothing of Coordinate Reference Systems and are almost un-helpable.)

| improve this answer | |

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