GIS Skills Spatial Data and Algorithms understanding: Understand the special case of spatial data, how they work and their internals. Also, be familiar with how certain operations are carried out and when they are applicable. Many operations will run in the software, but not necessarily produce valid results.
Data entry: Be able to enter data into a database successfully with minimal errors. This includes editing said data as needs arise.
Data conversion: The ability to convert data from either older sources (digitization) or from multiple sources to either a common format or common schema. It is extremely useful to be able to work with data coming from GPS and performing data corrections as needed.
Data maintenance: Be able to maintain data, correctly archive and ensure quality control.
Metadata creation and editing: Maintain logs of data processing and relevant information to include in metadata and ensure accurate creation and maintenance of said metadata.
GIS Analysis: Be able to perform GIS Analysis as it is often used to solve common problems. An ability to extend and alter the standard analysis to meet requirements is a plus. Remember, data analysis can be performed on vector or raster data, therefore some remote sensing skills are required
GIS Workflow: Understand the workflow to perform some procedure and be able to follow it and enhance it as needed.
Model Building: Be able to create models of processes to allow for a workflow to be built. Also, model building in the ArcGIS sense is very helpful in this regard.
Cartography and Graphic Design: Familiarize yourself with cartographic principles and graphic design principles. Maps are used in a variety of ways and presented in a multitude of media. You need to be able to work with that. Think of color, symbology, fonts, etc. Bad cartographic design will often make your analysis hard to decipher and interpret.
Basic understanding of programming: Be able to understand what programming is and what it can do to solve certain problems. Know the strengths and limitations of programming custom solutions to problems, as well as time requirements.
Programming language: Familiarize yourself with a programming or scripting language, as it is often used to build workflows or custom solutions to problems. For scripting language, both ESRI and the open source community tend to gravitate toward Python. For programming languages, C++ will give you an opportunity to work in multiple environments, while C# and the .Net languages offer you good development tools and interaction with Windows based software. (More about programming languages)
Object Oriented programming: Learn the concepts of object oriented programming and be able to apply them in conjunction with your programming language of choice. Most GIS development is leaning toward this paradigm, and you should too. (More about object oriented programming)
Basic GIS architecture (desktop and web): Understand the architecture of GIS and the method of communication between the different parts of GIS. Be able to distinguish when one can introduce internet-based communication in the mix and how it would work.
Able to understand data models and structure: When given a database, you should be able to explore the data models within it and understand the structure of the database. Often times, structure will be represented in diagrams (UML), discussed below.
Ability to design data models: Given specific requirements for data, you should be able to design data models to fit your data.
Database Design tools knowledge: You should familiarize yourself with database Database Design tools knowledge: You should familiarize yourself with database design tools, like Microsoft Visio. Most design work for data models uses it.
Structured Query Language (SQL) knowledge: Almost all modern Database Management Systems (DBMS) understand SQL for data queries, inputs, deletions, etc. One should be familiar with SQL and be able to perform SELECT, INSERT, MODIFY and DELETE statements. JOINS, RELATES and further SQL knowledge is greatly valued and useful on the field.
PROJECT MANAGEMENT AND DESIGN
Ability to translate user needs to solutions: More often than not, you will be supporting some client (or boss) that is not familiar with the details of GIS. You need to be able to translate their needs into solutions that can work in your domain. If it is not possible, you also need to be able to say so and offer alternatives. This is similar to requirements analysis used in software development.
Good communication skills: You need to be able to communicate effectively and with confidence with your team and clients. There is no substitution for this skill.
Good writing skills: Communicating is not restricted to verbal communication. You need to be able to clearly communicate in writing not only for communicating with your clients, but also to be able to produce metadata and reports of your work.
Project management skills: Often overlooked in the GIS world, formal data management training is desired and required to run successful projects on time and within budget.
Ability to apply expertise in multiple domains: GIS skills, while important, are not useful if they can not be applied to different domains. Your knowledge of other domains (like biology, forestry, etc) will allow you to think of creative ways to apply your GIS skills in a multi-disciplinary functions, which is greatly needed. Think outside the box
Portability of skills on multi-platforms and online/offline world: Your skills need to be applicable to different platforms. Not only should you learn how to do GIS Analysis, but you should be able with limited help to achieve similar results using other platforms. An ability to traverse between online and offline worlds is a valuable asset to have.
Detail oriented: This needs no explanation, but in the GIS world, detail oriented can get you very far. The quality of your work will show (especially when you think of metadata or workflows).
Customer Support skills: In most cases, GIS is used as a support tool within large organizations. As such, GIS Analysts oftentimes need to interact with clients, either internal or external. Having good customer support skills ensures you establish strong relations and opportunities.
Don’t be afraid to explore