Interview with John Solly
Lead Geospatial Software Engineer
Florida, United States of America
Q1. Please share your educational and professional journey with us?
My educational and professional journey includes a B.A. in Geography from UC Santa Barbara and an M.S. in Geospatial Intelligence from George Mason in Fairfax, Virginia. In addition to my academic background, I have self-taught computer science and programming skills to become more technical. I began my professional career on the QA team for ArcGIS Dashboards at Esri, where I enjoyed the position but desired to work more deeply in the code. Currently, I serve as the lead geospatial developer at the University of Maryland, where I am engaged in a research project exploring the intersection of web3 and geospatial.
Q2. Why is automation in Geospatial Domain is necessary in today’s world and what are the benefits of automation in terms of business?
In today’s world, scale is increasingly vital in different domains, including geospatial analysis. Although individuals can achieve significant tasks independently, their output is limited by working hours. Automation in geospatial analysis facilitates the uninterrupted processing of large data volumes that would otherwise require several years to analyze manually. The idea of ‘automating oneself out of a job’ has become prevalent, enhancing productivity and efficiency. As a former QA Engineer at Esri, I saved countless hours of manual testing by writing automated tests, which is an excellent example of automation’s benefits.
Q3. Which one is more useful and beneficial between open source and proprietary GIS stack in automation?
In automation, choosing between open-source and proprietary GIS stacks depends on several factors. If you plan to work in government agencies, opting for the proprietary GIS stack may be more beneficial, as Esri has a strong presence in local and federal agencies, particularly in the US. On the other hand, an open-source GIS stack can be an excellent choice for those interested in small companies or startups.
While the choice between open-source and proprietary GIS stacks may have practical implications, the technical skills learned apply to both. Thus, gaining expertise in one GIS stack equips individuals with fundamental knowledge that can quickly transfer to another. Ultimately, the choice between open source and proprietary GIS stacks in automation will depend on individual preferences, practicality, and the project’s specific needs.
Q4. The domain of geospatial technology is visualizing a massive change. Where do you see the geospatial industry to go in the long term?
The geospatial technology domain is experiencing a significant transformation and will likely become even more integral to many organizations in the long term. However, we may see geospatial capabilities being integrated into other business capacities, such as business intelligence. Therefore, geospatial professionals should recognize that many ‘geospatial’ positions may be in departments that are not typically associated with geospatial technology.
Furthermore, the geospatial industry will likely shift towards cloud-based solutions in the long term. Already, cloud-native geospatial formats like COGs (Cloud Optimized GeoTIFFs) exist, and OGC is currently considering GeoParquet for vector data. This trend is an exciting development for the geospatial industry.
Q5. Which skills are necessary to understand GIS lifecycle for any GIS developer?
GIS developers require various skills to understand the GIS lifecycle. Among these skills, understanding and using Docker and APIs are highly valuable. As a geospatial developer, I have used Docker extensively in most positions. It is an excellent tool for managing dependencies, sharing environments, and simplifying deployment.
In addition, APIs are crucial for GIS developers. As new technologies and libraries emerge, APIs provide a popular way to expose functionality. Once developers learn a few APIs, they can quickly adapt to new ones, facilitating the learning process. Therefore, gaining expertise in APIs is an essential skill for GIS developers.
Q6. How do you see the latest technologies like AI, ML and Data Science in Geospatial software development?
Technologies like AI, ML, and data science are increasingly becoming vital to the geospatial software developer toolkit. While these technologies may seem intimidating, it’s essential to recognize that GIS professionals need not be AI or machine learning experts to utilize them effectively.
Tools like PyTorch provide a convenient and accessible means of implementing AI and machine learning algorithms in geospatial software development. PyTorch, for instance, provides a [C++] wrapper in Python, enabling developers to train models and customize them to suit specific geospatial use cases. This capability unlocks the potential of AI, ML, and data science, even for those with limited experience in these fields.
Therefore, as the integration of the latest technologies continues to grow in geospatial software development, it is crucial to understand that these technologies are not exclusive to AI and ML engineers. GIS professionals can leverage the power of these new tools and remain competitive in the field by learning how to use them effectively.
Q7. Which skills would you recommend in order for people to grow their career as a Geospatial Software Engineer?
Individuals require diverse skills to advance their careers as geospatial software engineers. A primary skill for geospatial developers is proficiency in Python, an excellent language for performing geospatial analysis using libraries like ArcPy, Pandas, and GDAL. Moreover, developers can use Python for full-stack web development using Django.
Another crucial skill is SQL proficiency, with a particular focus on Postgres, the most popular database in the world. PostGIS, a geospatial extension for Postgres, is also the most popular geospatial extension. Intermediate-level knowledge of SQL, combined with experience working with Postgres and PostGIS, is an excellent skill set for geospatial software engineers.
Additionally, it is essential to develop computer science fundamentals to become a better geospatial software engineer. Self-taught open-source B.S. in computer science curriculums like OSSU provides a comprehensive and structured way of learning computer science concepts, enabling developers to acquire fundamental skills and knowledge required for advanced geospatial software development.
In summary, growing your career as a geospatial software engineer requires diverse skills, including Python proficiency, SQL proficiency, and computer science fundamentals. These skills will enable developers to create innovative and advanced geospatial software applications and remain competitive.
Read more about John Solly @
My Blog: https://blogthedata.com/