Spatial Career Guide – 5 Key Skills for Future GIS Software Developers

44
March 29, 2012 at 8:28 am  •  Posted in Business, Education, Geography by  •  44 Comments

Many, many folks in the GIS community find themselves in the software development universe and for good reason.  Software development makes for an interesting career, blending problem solving and creativity, and most software development jobs pay fairly well with opportunities for entrepreneurial adventures.  This is the path I took after finishing part of grad school and I have no regrets whatsoever.  I loved programming and developing software tools with GIS components.  Way back in the day I helped develop a map interface and GIS functionality (using VB and MapInfo’s MapX component) for a cool supply chain network design application called LogicNet.  My code stood the test of time for a few years after I left but it’s long since been rewritten and dramatically improved upon.  The product lives on and is now sold (for way too much money) by IBM’s supply chain application group.

This is my first post in a series on Spatial Careers.  If you’re currently a student in a geography department and you want to become a GIS software developer then this post is for you.  First of all you might be thinking – gee, maybe I should become a computer science major instead, right?  Well, if you’re a freshman and not too far down any particular path it’s not a bad option to go with a more recognizably technical degree and it will help you get a leg up for that first job.  But, I would encourage you to stay in the geography department while loading up on courses from computer science and other hard-core departments like physics, math and/or whatever interests you most.  No other department will teach you to think spatially and I think that’s probably the toughest skill to learn on the job.

The cool thing about software development is that after a few years in the work force no one will care about your major or where you earned your degree.  The only things that will matter will be:

  1. Can you write solid code?
  2. Are you good at solving challenging problems – technical and otherwise?
  3. Can you communicate effectively in both verbal and written forms?
  4. Are you able to establish and maintain productive working relationships with team members?
  5. Can you learn new technologies quickly?

If the answer is yes to all those questions you’ll have a great career whether you have a Master’s degree in Computer Science from Stanford or an Associate’s degree in Geography from San Joaquin Delta College.  Here are a few thoughts on each of these pieces.

(1) To learn how to write solid code it would be a good idea to take a core sequence in Computer Science.  Some combination of applied programming (with a popular language like C# or Java) and computer science theory would be good.  Ideally you’d also take more advanced courses on data structures and algorithms.  There are probably a few others I should mention but you can’t take everything.  In addition, you would do well to engage in some self-study to learn how to write solid industrial strength code.  Read Code Complete: A Practical Handbook of Software Construction or something similar and The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition (2nd Edition).  Grab any O’Reilly book on a technology of interest.  Think of a simple project and then do it – it doesn’t have to be perfect but see it from start to finish.  If you need an idea I’ll be glad to put you to work.  Also, learn how to test your own work – this is important!  Quality Assurance is not an after-thought; it’s a critical part of software development and everyone is responsible.  Don’t be one of those programmers who writes quick and sloppy code and blames QA when bugs slip through the cracks.

(2) For general problem solving, just take a wide variety of challenging courses.  For me, that meant taking lots of statistics including Applied Regression Analysis in the Business School and grad-level Econometrics in the Econ Department.  There were outstanding classes in the Geography Department – my favorite was Advanced Geographic Data Analysis - but sometimes it’s good to explore other fields.  Take courses that interest you and will provide you with a different perspective.  Don’t worry so much about how they will look on a transcript or whether or not they fulfill a graduation requirement.  I know it’s difficult to finish in 4 years (or 2 for a Master’s) and you want to be efficient but it’s too important for you to learn cool stuff while you have access to such a nice variety of brilliant minds and the time to explore.  [If you don't have time/money, get a job and go through school at a slower pace.  In many ways, I prefer this approach.]

(3) Write a lot.  Write to your parents and grandparents (more than just text messages or tweets), if you’re lucky enough to still have them in your life.  They will love you for it and it will be a good way for you to learn how to describe what you’re doing to people who may not be technical.  Communicate via email with your Professors and TAs.  Think of each email as an important business memo.  Start a blog and write about what you’re learning.  Send emails to interesting people and ask them questions about their work or for a brief phone call to discuss something that interests you.  Learn how to convince people to listen to your ideas with your writing.  Trust me – it will help no matter what you do or where you go.  Also, take opportunities to give presentations.  Volunteer to be the spokesperson for your class project or offer to give a guest lecture in a class.  Attend a conference and present a paper.  Learn how to deliver a presentation with PowerPoint.  Everyone does it in business, academics, you name it.  In person, via WebEx, over the phone.  All the time.  Learn to play the game.  If you want your brilliant ideas to be heard you have to be able to communicate.

(4) Get along with people.  This can be the most challenging piece of the puzzle.  Programmers are an eccentric bunch but they’re typically very good people.  They can be very quirky and are often introverted but, in my experience, programmers are usually down-to-earth, interested in a lot of different things, easy to get along with and fun to talk to.  Mostly they want to have the autonomy to work on cool problems and solve them in clever ways.  So give them space but ask them about what they’re doing and how they’re doing it.  You’ll probably learn some good stuff.  Unfortunately, you also will need to get along with other people who present more of a challenge, especially if you work for a large company.  Accounting, legal, marketing, even IT – all can be a pain when they’re distracting you with corporate politics or asserting their authority while you’re just trying to write code.  Just do your best.  Connect  with someone in Sales so you can maybe meet a real customer and figure out why it’s important to do a good job.  Don’t feel like you have to be everyone’s friend.  Sometimes it’s well worth it to make a stand and not sacrifice your integrity just to be seen as a team player.  There are true assholes in the world.  Life is too short to pretend you like them.  When in doubt, candor is the most effective style but most people have thin skin so try to be respectful and kind.  Maybe the best way to prepare is to take a leadership role of some kind in a college club or organization on campus.  Good luck with this – I’m not the best one to give advice here.

(5) Think of all the changes to the software industry in the last 5 years.  Apple’s iPhone was not yet available for purchase 5 years ago.  No one had heard of an iPad.  Now everyone has an iPhone, iPad or Android device and developers who can create apps for iOS or Android are in high demand.  So you can’t expect to learn what you need for your whole career in college.  You’ll be learning new technology every year and probably making major changes to your development environment every 3-6 years.  Accept that you can’t write in the same syntax and/or within the same IDE for your whole career; instead, jump at the chance to build a prototype with new technology.

I know that you’re thinking – wait, dude, I have to know all the different ArcGIS APIs and Ruby on Rails, blah, blah.  Back in the late 90s you had to know about n-tier architecture and .NET and ODBC and the different ocx controls for mapping/GIS.  Now it’s a bunch of other silly acronyms and funny names.  Fortunately, I don’t have to keep up with all this stuff now.  I know, I know.  It actually matters if you want to work with and be respected by technical people.  I’m just trying to point out that it’s always changing and you’ll never know everything.  Plus, college is a lousy place to learn this stuff.  Only a small fraction of computer science professors stay up on the latest technologies – they can’t bother to play around with HTML5 or mock up an Android app.  They’re too busy writing books and articles and preparing lectures.  Same goes for GIS professors.  This will vary from campus to campus but, generally speaking, if you want to be on the bleeding edge of software development you’ll need to read books and blogs and build prototypes on your own time.  You won’t learn these skills in any required courses.  Same goes for GIS development tools.  You’ll be stuck making ArcGIS plug-ins and using all the other ESRI development tools because nearly every University has a site license and since the U. spent a fair bit of cash on that site license they’re not going to buy alternatives for the GIS lab.  There’s nothing wrong with ESRI technology – they are clearly the leader – but it would be nice to experiment with a variety of other geospatial technologies.  Younger students are lucky because open source didn’t really exist in the same way when I was in college or grad school.  Now it’s an all-you-can-eat bonanza out there.  Dig in.

Anyway, this article won’t tell you which technologies are the right ones to learn.  I’ll leave that for someone else who’s deep in the technical trenches.  I’m more on the business side these days and only know enough technology to be dangerous.  But, I think I can still provide some meaningful guidance on how to spend your time while in school in order to position yourself for a successful career campaign in the GIS software development world.  Hopefully this post does just that.

If you follow the guidelines above and can manage to land a job where you have the opportunity to work with experienced software developers who are willing to show you the ropes, I think you’ll be in great shape.

 

44 Comments

  1. Pingback: Spatial Career Guide for Undergrads Currently Studying GIS – Curriculum Suggestions for 6 Geospatial Career Paths | Geographical Perspectives

  2. Andrew / March 29, 2012 at 1:37 pm / Reply

    Great Post Justin! I completely agree on everything the Justin has posted here.

    One thing I’d like to mention is that whenever I talk to new hires, interns and other staff that come to me with advice on projects is to really think about the process more than which buttons, functions or commands to use. Also don’t worry about which language to learn first because conceptually they are all very similar and you’ll most likely end up using multiple languages at any given point in your career or even within a single project.

    • Justin / March 29, 2012 at 2:18 pm / Reply

      Thanks Andrew! Great point – the conceptual process is worth the long-term investment of time, the buttons/commands will eventually go out of style.

    • Tamara / April 6, 2012 at 2:51 pm / Reply

      Dear Justin, I’m an urban planner, finished two GIS courses and I enjoyed it! Your points 2,3 and 4 are the key challenges in my career right now. Logic and critical thinking, wrighting as a way of clearing my thoughts, multidisciplinary approach and connecting people is what I am trying to practice in this hard period I am going through right now.
      Hope for the best!
      Tamara

      • Justin / April 6, 2012 at 7:47 pm / Reply

        Thank you for the comment, Tamara. Wishing you the best! -Justin

  3. Adam / March 30, 2012 at 11:09 am / Reply

    Justin,

    Thank you so much for this post. Possibly one of the best I’ve read – well written and straight and to the point, which can be rare these days. I am a Geography Grad student at SFSU and currently enrolled in a Python/JavaScript class and while I do not have that much programming experience and it can take me hours to work through a problem, it is one of the most rewarding feeling I’ve received when the code works. I believe this class will be one of the most important of my Grad School Career.

    By happenstance, my friend also sent me this yesterday regarding a talk on education:

    http://www.youtube.com/watch?v=zDZFcDGpL4U&feature=relmfu

    Why does it matter? Because it is a mind-blowing inspirational video about education and the person who sent it to me just so happens to be…a programmer. :-)

    Thanks again, Justin. Your experience and communicative value show through on this post – very helpful.

    • Justin / March 30, 2012 at 3:07 pm / Reply

      Thanks for this comment, Adam! I’ve had that same feeling when making something work with code. I particularly enjoyed this process when it involved computing some metric and creating a map of the data. Try automated mapping by writing to SVG from Python (or something comparable). Seeing a map come to life by stringing together some syntax is one of my favorite activities – simple and pure geography.

      And thanks for sharing this video – very interesting. Best wishes for success in your grad program and beyond!

      Cheers, Justin

  4. Pingback: Spatial Career Guide – How to Become a Geospatial Analyst | Geographical Perspectives

  5. Mingfeng / April 1, 2012 at 5:53 am / Reply

    Dear Justin,

    Thank you for the post, it is great. I’m a master’s student studying GIS. I’m very interested in software development and have developed variety skills in GIS software development. I’m going to graduate and currently seeking a job in GIS software development. But the reality is that there are very few job positions for GIS developers (at least here in Finald where I’m studying). It is also possible for me to find a non-GIS developer position which is relative easy to find, but I like GIS and I think it has a promising future. What do you think about my situation? Can you give some suggestions? Many thanks.

    • Justin / April 1, 2012 at 6:50 am / Reply

      Mingfeng, if you can find a software developer position, even if it’s not GIS, I would take it and learn as much as you can about software development for 1-2 years. On the side, keep up your knowledge of GIS-related technologies and keep your eyes open for a GIS-related developer position. Best of luck!

      • Mingfeng / April 2, 2012 at 6:02 am / Reply

        Thank you for your advice. I will try to find a job first.

  6. Pingback: Spatial Career Guide – Cartography and Visualization Specialist | Geographical Perspectives

  7. Pingback: Spatial Career Guide – Geographic Information Scientist | Geographical Perspectives

  8. Pingback: Spatial Career Guide – Spatial Statistician | Geographical Perspectives

  9. Pingback: Spatial Career Guide is now Required Reading at USC | Geographical Perspectives

  10. PamS / May 10, 2012 at 11:35 pm / Reply

    Justin,

    I really enjoyed reading your article. It talked to me on so many levels.

    I stumbled into GIS in 2000 and have come to a crossroads: Do I return to school and work toward a MSGIS degree? Or, taking some specialized classes that do not necessarally(sp) fit into any one degree.

    Your article has give me a lot to think about.

    Thanks,
    PamS

    • Justin / May 11, 2012 at 7:06 pm / Reply

      PamS – Thanks for reading and thank you for the feedback! I’m so glad that my article was helpful! I’d love to try to help with your decision. Can you provide some additional context? Best, Justin

  11. M / June 10, 2012 at 8:06 am / Reply

    Hi Justin,

    Great blog. I was about to enroll in a GIS Masters but am having doubts, and am opting to do it in Computer Science instead. It seems to me that the field is uncertain and struggling to ‘define’ itself after the very quick developments that has been going on purely by software developers with no spatial background in web mapping, as well as the increased number of people who have ‘GIS’ as a skill and expertise on their resume but are from different backgrounds.

    What worries me is that my University’s Geospatial program has been eaten and been reduced from ‘Master of Geospatial Information Science’ to a sequence one can take within the ‘Master of Information Technology’, placed along subjects such as business information systems, interaction design & project management. This is a shame for me because I wanted to get involved in the ‘science’ aspect of it, understanding the real meaning of the data, as you stated in your defense that ‘spatial is special’.

    Many of the original subjects have been removed (such as spatial analysis!!!) and the major has become a more generic IT education. It seems to me that the faculty think ‘spatial analysis’ will be done by professionals as a secondary skill (such as resource management, planners etc), while the applications will be developed and databases maintained by software developers & dbas. This, in turn, seems to phase out the position of both the ‘GIS Tech.’ and the ‘GIS Analyst’, which seem to be the most common types of jobs for those with pure GIS degrees, in one fell swoop. Do you think GIS belongs in a ‘Master of Information Technology’ in this way? What are your perceptions of this titling which seems to be uncommon?

    Cheers!

    • Justin / June 10, 2012 at 9:38 am / Reply

      Hi M. Thanks for the feedback and this question. It’s difficult to provide guidance without additional context. Do you have a bachelor’s degree in geography? Any work experience? Are you most interested in becoming a GIS software developer? Or would you be more interested in another path? Please add a bit of information so I have a better idea as to where you’ve been and where you want to go. Generally speaking, I’m not a big fan of the Master’s of Information Technology and would be more likely to endorse an advanced degree in computer science, statistics or geography. Also, I wouldn’t necessarily advocate grad school – it’s not the best path for everyone. Thanks! -J.

  12. Cason / June 16, 2012 at 4:10 pm / Reply

    Hello Justin, I just read all of your Spatial Career Guide blogs and they were a wealth of knowledge! Thanks for this. I am about to begin school (I was military for four years) and I have two questions:

    1. Is it never too late to look into pursuing GIS as a career? I imagine I wouldn’t be done and ready to start looking into jobs for at least six years while I focus on getting my degree(s). Do you feel GIS will still be relevant by then?

    2. As I previously mentioned, I was military for four years as a Meteorologist. I do not wish to pursue Meteorology, but I wish to stay in the Earth Science area, and really enjoy Geography. Will my satellite imagery analysis experience give me a leg up on the competition?

    Thanks,
    Cason

    • Justin / June 18, 2012 at 12:03 am / Reply

      Cason – glad to hear that the spatial career series has helped you! Thanks for sharing your questions.
      (1) It’s never to late to pursue a career as a geographer and, yes, I think geospatial analytics will still be a good field in 6 years. But, you might want to read this post about GIS if you haven’t already: http://www.justinholman.com/2012/03/20/spatial-is-indeed-special/
      The key is to focus on one of the spatial paths rather than relying on knowledge of a particular GIS software package.
      (2) Your military experience and your meteorology background will BOTH be quite helpful. As I’m sure you know there are terrific careers available to geography/GIS types in the National Geospatial Intelligence Agency (NGA) and in other DoD agencies. And your experience with remote sensing should indeed give you a leg up. That said, I don’t really know too much about the future of NGA, DoD or other government agencies so you’ll have to do your own homework on that front. If you would prefer to avoid DoD related work then it sounds like you might enjoy the Physical Geography side of things. Plenty of opportunities in environmental consulting, environmental/earth science, etc. Be sure to take classes in Climatology, Geomorphology and Biogeography. If you find a particular topic of interest in one of those classes, follow your passion and see where it will go. I suspect that there will be plenty of demand for good physical geographers with solid training in spatial methods, remote sensing and GIS-related techniques.
      Hope that helps. Let me know if you have further questions about careers in physical geography. I don’t know as much about possible options but I can ask around and/or may be able to put you in touch with some good folks in the field.
      Best wishes!
      Justin

  13. kam / August 3, 2012 at 5:55 am / Reply

    Hello Sir,
    Its a great post for a fresher like me.I m also new to this GIS field and m finding it quite interesting.I have done MCA also and want to go into gis s/w development. But the reality is that there are very few job positions for GIS developers.Right now m working as a GIS executive(not GIS development).Now I want to switch from this job as career growth in this sector is very slow especially in india,but I like GIS and I think it has a promising future. How to explore this area so that I can excel in this field?What do you think about my situation? Can you give some suggestions? Many thanks.

    • Justin / August 3, 2012 at 7:00 pm / Reply

      Kam – did you read all 6 of the “Spatial Career Guide” posts? If not, please read all of them and tell me which one seems best suited to you. This post is geared toward undergrads just getting ready to hit the job market but it also lays out 6 separate career paths that you might consider:
      http://www.justinholman.com/2012/03/28/spatial-career-guide-for-undergrads-currently-studying-gis/

      I have no idea what the job market in India looks like. What I do know is that hear a lot of complaints here from people struggling to find GIS jobs while the market continues to provide outstanding opportunities for well-prepared candidates. If you are an excellent software developer with advanced spatial/GIS skills your talents will be in demand. Do you write nearly bug-free code? Do you work well with software development team members? Do you have excellent communication skills? If so, you may have to be patient, but you will eventually find interesting, lucrative work.

      Best wishes, Justin

  14. Ravi Dhungel / September 20, 2012 at 11:54 am / Reply

    Absolutely, I agree with most of the things that are mentioned here.

  15. Himanshu / March 1, 2013 at 5:02 pm / Reply

    Sir,
    Thank you ! your article is really helpful. I’m doing masters in Remote sensing and GIS and my keen interest is only in programming. I ve learnt c, c++ and continuing with java and python. Less time and more to learn and so many other things are going on in mind like u mentioned.. i ve to know arcGIS thoroughly etc… i know i will end up with basic knowledge of all these languages…but master of none…..so what exactly a software company expects from a GIS fresher?

    • Justin / March 2, 2013 at 6:27 pm / Reply

      I think learning lots of languages is probably a good way to go in grad school. Master of none is probably okay at this stage – once you get your first job you will be in position to become a master of at least one, and probably more than one. Your best bet while still in the Master’s program is to find a real project and some way to contribute. You can do this through an internship or by joining a research project or by just doing your own project…maybe for credit via independent study (or for a capstone or thesis project) if you have good rapport with a professor in your program. Good luck!

  16. Thomas Eaves / March 25, 2013 at 7:45 pm / Reply

    Dear Justin,

    I have searched far and wide for your e-mail address; however, it appears to be buried deep within the mysterious caverns of the internet – so, this will have to suffice (and I hope you feels the question is relevant to your post).

    In August, I will be attending NCSU’s GIS Graduate Certificate program, with the intention of transferring into the Masters of Professional Science in Geospatial Information Sciences and Technologies. I already hold a Dual Bachelor of Arts in East Asian Studies and Comparative Religious Studies (and speak Chinese). Further, I have taught for three (3) years. In short, I adore the field and sincerely think GIS-oriented data representation is the coolest ‘thing’ since sliced bread.

    That said, there is so much hum and glum on the internet about the demise of the field. Am I setting myself up for failure – in terms of the financial investment – by attending this program?

    Thank you for your time.

    Sincerely,

    Thomas

    • Justin / March 26, 2013 at 10:38 am / Reply

      Hi Thomas – You have a very interesting background. In order to answer your question I need to have a better idea as to what you’d like to do with your career. Do you want to become a GIS software developer or did you have something else in mind? I think it might be very cool to combine your background in East Asian Studies with GIScience. What do you want to be able to do after grad school? Thanks, Justin

      • Thomas Eaves / March 26, 2013 at 3:46 pm / Reply

        Dear Justin,

        I have a variety of ideas for the application of my education; however, I am most interested in international development-oriented work, more specifically the geographic representation of patterns in human behavior either historically or ‘now’(with a mind toward growth-based demand forecasting – not to give away my ideas) – the “Human Geography” bit. In that regard, I am seeking training in Marine, Earth, and Atmospheric GIS as well as Forestry and Environmental GIS (the application and software development aspect of both are most appealing).

        In some regard, I am entering the field because I think it is ‘interesting’, so to speak, and because I believe the field provides a unique insight into data. Further, the opportunities – when available – all seem really interesting.

        My thought is this: the demand for GIS analysis seems to be growing in a relatively untraceable way as the growth appears to be more universal and interdisciplinary, i.e. a career opportunity may have GIS at its core but not be marketed as such (?). I think many of the people discussing the dearth of opportunities may be the less creative with respect to the dissemination of their resumes (?) – who knows.

        Sincerely,

        Thomas

        p.s. It is awesome that you are so diligent with your responses to your fan base (I have witnessed it throughout your site).

        • Justin / March 26, 2013 at 5:23 pm / Reply

          Thomas,
          You definitely sound like a geographer and I mean that in a good way. My advice would be to look into more traditional geography programs rather than only considering programs focusing on a technical GIS curriculum. Based on what you told me I would immediately recommend taking a close look at Clark University because they have strong offerings in everything you’ve mentioned so far and I think they might appreciate your background and interests more than most programs. Here’s a link to explore a bit: http://www.clarku.edu/departments/geography/maprograms/gisde.cfm

          There are loads of other programs out there that could also be a good fit. You might read about the faculty at Clark and then trace their background to find out where they studied and who else studied with them. This will give you ideas fairly quickly about who you might like to learn from and where they teach.

          Remember, there’s a lot more to becoming a geographer than learning GIS skills. Your background has given you a good sense as to the possibilities and opportunities that geography offers but I would urge you to study geography more comprehensively rather than focusing only on GIS technologies. I worry that NCSU may not offer sufficient resources in this regard since they don’t appear to have any trained geographers in their program and, instead, have cobbled together a faculty from a wide variety of tangentially related departments. Don’t get me wrong – I’m sure they have a great deal to offer and know plenty about geospatial technology. But, that’s not the same thing and I think you’d get more of what you’re looking for at a program like Clark or one of the other more traditional geography departments.

          One last comment. You mentioned some pessimism about employment prospects for GIS professionals. Many of these people with a negative outlook have good reason to be worried. Those who are trained in all aspects of ArcGIS but not much else are in big trouble and they will need to retool for the future. If, instead, you become a well-trained geographer, are able to think spatially, analyze and visualize so called “Big Data”, and communicate your ideas effectively you will find yourself with plenty of fulfilling and potentially lucrative opportunities.

          I hope that helps. Best of luck!
          Justin

          • Thomas Eaves / August 19, 2013 at 11:39 am /

            Dear Justin,

            Thank you for your quick reply. I wanted to update you with where I am headed with respect to my own training (as it may be helpful to others). Too, I believe my chosen route is one you tangentially encouraged in another post.

            Having received a Bachelor’s of Arts in East Asian Studies and Comparative Religion, I did not want to do the whole thing, again – i.e. go back to school for another field and only walk away with another Bachelor’s to show for it. There was something appealing about a Master’s degree, particularly in my desired field: Geospatial Information Science.

            After a few months of thought (and two weeks before my classes began), I decided to change – to transfer – to another program and school, entirely. Long story short: after a few discussions with my friends in programming-oriented fields and family with long-term programming experience (twenty-five years), I decided to pursue my Associates of Applied Science in Computer Programming through a local community college. The natural question is, “Why?”

            Many of the things I am interested in with respect to GIS are all programming driven, e.g. application and tool development within the field. I believe (emphasis) I have some new ideas about where to take the field and where to apply it; however, I want to develop the software that does it. Developing geospatial information science is the long-term goal; however, I have realized I need some other competencies in order to be a part of that process, namely programming.

            Spatial and geographical training is the five year plan – but, I have realized I want some other bits and pieces along the way that will allow me to attain that goal (and hopefully allow me to apply for some interesting and competitive positions as I work toward the goal).

            Justin, a sincere thank you for your thoughts. They have been indispensable.

            Sincerely,

            Thomas

          • Justin / August 19, 2013 at 12:04 pm /

            Thomas, I think the decision to study programming is a good one. And, learning at a community college is typically a much more economical choice. I think it makes good sense. If possible I would urge you to find some way to apply what you’re learning as an intern, volunteer, paid employee, anything so long as it addresses a real problem. Not only will this accelerate your learning, it will give you a taste of the career you’re pursuing and the ability to modify plans early in the process as you better understand the landscape. Delighted to hear that my comments were of some assistance.
            Best of luck! -Justin

  17. Rudy / October 14, 2013 at 4:27 pm / Reply

    Thank you for posting such an interesting article for those of us who wish to grow in GIS.

    I am a career transition adult learner who has a BS in Organizational Leadership, AS Architectiure, Environmental Technology GIS certificate.

    I currently work as a GIS Analyst and have 2.5 years GIS work experience in fast paced production mapping environment in oil and gas.

    I also have worked in fast paced data validation/data compilation in emergency 911 street addressing.

    My passion is emergency management, but I enjoy oil and gas work.

    I would like to pursue a graduate program but since I have no programming background. Feel that IT should be the path to follow.

    • Justin / October 14, 2013 at 5:03 pm / Reply

      Hi Rudy,
      Thanks for the comment! Sounds like you’re doing well and making great career progress. I’m not sure if you had a question for me but let me know if I can be of any assistance. Best of luck! -JH

  18. Elvis / November 30, 2013 at 11:28 am / Reply

    Hello Justin,

    Great article. I am a GIS major (graduating next year) at the University of Maryland and I am loving my choice of career. I am interested in getting into the GIS software development, but I am not really sure I can get into this field. Our department has put more emphasis in GIS programming (python) and I have taken a javascript, css, html class in the computer science department. So my question is, how can I be competitive and be eligible to apply for these jobs? Unfortunately, I cannot afford to get a master’s degree, but I was thinking about getting an associates in computer science, if that would help. What do you think?

    • Justin / December 1, 2013 at 1:47 pm / Reply

      Hi Elvis,

      Thanks for the note! Glad to hear you’re happy with your GIS path thus far.

      I think my advice would be to self study Python to become as proficient as possible and build some cool applications on your own. Post your apps on a blog to demonstrate your skills and market yourself. You could even offer your services on a freelance basis via elance or equivalent. But, be on the lookout for a good job. You need a mentor to teach you how to write truly industrial strength code and you need to be part of a good team to learn quality software development processes. Going solo is great but very difficult if you lack experience.

      After gaining some work experience you might consider grad school. And, along the way, I wouldn’t hesitate to take courses at community college or elsewhere if you can fit them in. But, I would not recommend an associates degree as, in my opinion, adding that to your resume will make you look like someone who belongs in a lower level technical position where the work will be neither interesting nor lucrative.

      Best wishes!
      Justin

  19. Emma Joshi / February 1, 2014 at 10:03 pm / Reply

    Justin,

    Thank you so much for your incredible site. I am delighted to see my alma mater UCSB ranked so highly here! I earned my bachelor’s a few years ago and was also awarded the high honor of distinction as a geography major. Now (after an honest to God epiphany) I am considering returning for graduate work.

    In this article you say:
    “Software development makes for an interesting career, blending problem solving and creativity, and most software development jobs pay fairly well with opportunities for entrepreneurial adventures. This is the path I took after finishing part of grad school and I have no regrets whatsoever.”

    I am very interested in the path you took. What factors pulled you in the entrepreneurial direction? What were your biggest obstacles? How did LogicNet form? Would you mind sharing the full story?

    I am deeply interested in economic geography but I genuinely love all elements of geography including physical geography, digital visualisation, remote sensing, migration, biogeography, ancient civilizations and climate change. Should I keep my focus laser sharp during the admissions process or is it prudent to express my varied interests?

    Thanks,
    Emma

    • Justin / February 2, 2014 at 10:15 am / Reply

      Hi Emma,
      Thanks so much for the friendly note and congrats on having attended one of the best geography programs in the universe!
      First, in regards to positioning during the admissions process, I think yes to both. I would go ahead and express varied interests across the discipline but then do your best to articulate a laser focus on a research topic that you are anxious to explore.
      Second, I would love to elaborate on the move into software and how it played out but that would take time – it is a long story. I will give the idea some thought. If you have any more specific questions in the meantime I’d be glad to try to answer. Thanks again!
      Best wishes,
      Justin

      • Emma Joshi / February 2, 2014 at 10:38 pm / Reply

        Thank you so much Justin! I have bookmarked your site and will return often.
        Cheers,
        Emma

  20. Allan Lumb / April 18, 2014 at 2:52 pm / Reply

    Hi Justin,

    I am from UK and have been silently following your blog for a while now but finally decided to share my own academic experience and in the process seek some guidance on my future plans.

    I gained my bachelors degree in civil Engineering about 20 years ago and had somehow also learnt C++ and visual basic programming which I used for building some simple programs and games and small scale databse customization tasks. In year 2005, I had my first exposure to GIS during a departmental training and I immediately realized it was the ultimate profession I wanted. In the next four years, I undertook various introductory courses in GIS and remote sensing and finally decided to pursue higher studies in GIS. Being an in-service professional, I searched for an online option and finally registered with University of Leeds for the online MSc GIS program, which they offer in collaboration with University of Southampton and PennState. I took up the GIS developer stream in my advance year studies and the coursework involved subjects like Web GIS, advanced GIS programming with Python and Geocomputation.

    Now comes the tricky part of the story. I have completed the coursework and now ready to start my dissertation work. I have certain ideas in mobile, web and cloud based GIS applications, but the problem is I have been unable to find out any staff in the university who could supervise for these ideas. The coordinators want me to select a topic which follows a more generalized theme and may deprive me of an opportunity to fully exploit the developer skills attained in the process. I have already put my newly learned skills to use by developing and successfully deploying server based GIS applications for my department on the local intranet.

    With the above in mind, do you feel it will be a good idea to take an exit from the university with a postgraduate diploma and leave my dissertation. This will allow me to further refine my GIS developer knowledge through its practical application in the field and I can afterwards join back some other graduate school which has good opportunities for research till PhD especially in web and mobile GIS domains. Alternately, I may continue my studies and complete my dissertation on one of the topics proposed by the department.

    Your valuable opinion will be a great help for me.

    Best regards,

    Allan.

    • Justin / April 21, 2014 at 1:07 pm / Reply

      Wow, Allan. This is a big decision. I would be reluctant to pull out of the PhD program at this point. If you want a PhD you should finish now if at all possible. Or maybe take a leave of absence for a year and work on your technical developer skill set. If you leave now I would only do so if you’re okay with never finishing the PhD…because it will be really hard to start again. I don’t know you personally of course but, generally speaking, I would say most people would regret later in life not finishing now. I would take a year off (if possible), then look for a topic that meets your skill development interests while pursuing a more fundamental geography topic your advisors will approve. Best of luck! I was in very similar shoes several years ago and I’m quite happy I stuck it out. Best, Justin

      • Allan Lumb / April 21, 2014 at 11:23 pm / Reply

        Thanks for great response Justin, I probably needed to be more clear. Infact, I have not yet entered the PhD program. In UK, one has to first complete the MSc before entering the PhD and I am presently stuck at masters stage. Secondly, since it is an online masters degree, I am not sure if I can do any meaningful research at my own, considering limitations at the faculty end. So will it not be wise to leave this MSc at this stage (I will still earn a postgraduate diploma) and then enter some other program in US and Canada which affords the option to transfer to PhD after one year at masters stage.

        Regards, and looking forward to your reply,

        Allan

        • Justin / April 22, 2014 at 9:31 am / Reply

          Ahh. I see. Well, that is indeed a big difference. Yes, if your objective is to pursue a PhD then you need to be in a traditional (not online) program. I don’t know much about UK programs but Leeds is well known because of the pioneering geocomputation work of Stan Openshaw – could you move there and pursue the PhD without having to start all over at a new University? Best, Justin

  21. 3roub / August 11, 2014 at 2:43 am / Reply

    Thank Justin Holman , for those useful 5 key.

Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>