Research Programmer / Senior Research Programmer - National Center for Supercomputing Applications

Location
Champaign, IL
Posted
Apr 26, 2017
Institution Type
Four-Year Institution



National Center for Supercomputing Applications
Research Programmer/Senior Research Programmer

Search Extended

The National Center for Supercomputing Applications (NCSA) at the University of Illinois at Urbana-Champaign provides supercomputing and advanced digital resources for the nation's science enterprise. At NCSA, University of Illinois faculty, staff, students, and collaborators from around the globe use advanced digital resources to address research grand challenges for the benefit of science and society. NCSA has been advancing one third of the Fortune 50 for more than 30 years by bringing industry, researchers and students together to solve grand challenges at rapid speed and scale.

NCSA is currently seeking one or more Research Programmers/Senior Research Programmers to design, develop, test and implement software and interfaces for the CyberGIS Center for Advanced Digital and Spatial Studies (CyberGIS), and play a major role in developing the CyberGIS platform and associated geospatial software and tools with emphasis on computation, performance, and scalability to big geospatial data and complex spatial analysis and modeling.

NCSA is committed to increasing the diversity of the campus community. Candidates who have experience working with a diverse range of faculty, staff, and students, and who can contribute to the climate of inclusivity are encouraged to apply.

Research Programmer Key Responsibilities:
  • Design, develop, test and implement cyberGIS applications, software, and services enabled by advanced computing, data, and visualization environments
  • Explore innovative solutions to advancing cyberGIS technologies
  • Design, implement and test distributed geospatial middleware and Web services to bridge cyberGIS problem-solving
  • environment and cyberinfrastructure resources such as supercomputers, clouds, and data computing clusters
  • Design, develop and test scalable spatial analysis and modeling algorithms using various parallel computing and data-driven programming models
  • Develop cyberinfrastructure-based data services for the management of big geospatial data integration and analytics
  • Conduct computational performance profiling, scalability tests, and cyberinfrastructure-based continuous integration of the developed cyberGIS software components
  • Produce code repositories, documentation, project reports, and other written material related to software development
  • Provide technical support, training, and guidance to faculty, staff, collaborators and students
  • Participate in center collaborations and outreach activities, e.g., attending and presenting in meetings, conferences, and workshops, as a representative of the CyberGIS Center.


Required Education and Experience:
  • BA/BS in computer science, geographic information science, computer engineering, information science (informatics), earth science, math/statistics, computational science or a related field. Alternate degree fields will be considered/accepted if accompanied by equivalent experience (depending on the nature and depth of experience as it relates to cutting-edge geospatial information and computing technologies)
  • One year or more programming experience with C/C++/Java and scripting language such as JavaScript, Python, or Shell.
  • Knowledge and experience in software engineering and team-based software development


Preferred Experience:
  • Development experience in commercial and/or open source GIS tools and technologies.
  • Familiarity with web-based application development (e.g., JavaScript, PHP, HTML, REST) and geospatial JavaScript libraries (e.g., OpenLayers, ArcGIS JavaScript API).
  • Experience in code management (e.g., git/svn, issue tracking, continuous integration).
  • Experience in parallel computing (e.g. MPI, OpenMP, GPU) and/or data-intensive programming (e.g. Hadoop, Spark).
  • Experience with database systems (e.g. MySQL, MongoDB, or Cassandra) and spatial databases (e.g. PostGIS or ArcSDE).
  • Experience with cloud computing (e.g. OpenStack, AWS, Docker).
  • Experience in programming geospatial visualization tools (e.g. based on OpenLayers/Leaflet, GeoServer/MapServer).
  • Experience in system programming, administration, and/or trouble-shooting in Linux/Unix environment.
  • Ability to interact with people in a wide range of educational, scientific, and engineering disciplines to advance CyberGIS, cyberinfrastructure, high performance computing and their applications


Senior Research Programmer Key Responsibilities:
  • Design, develop, test and implement cyberGIS applications, software, and services enabled by advanced computing, data, and visualization environments
  • Explore innovative solutions to advancing cyberGIS technologies
  • Design, implement and test distributed geospatial middleware and Web services to bridge cyberGIS problem-solving environment and cyberinfrastructure resources such as supercomputers, clouds, and data computing clusters
  • Design, develop and test scalable spatial analysis and modeling algorithms using various parallel computing and data-driven programming models
  • Develop cyberinfrastructure-based data services for the management of big geospatial data integration and analytics
  • Conduct computational performance profiling, scalability tests, and cyberinfrastructure-based continuous integration of the developed cyberGIS software components
  • Produce code repositories, documentation, project reports, and other written material related to software development
  • Provide technical support, training, and guidance to faculty, staff, collaborators and students
  • Participate center collaborations and outreach activities, e.g., attending and presenting in meetings, conferences, and workshops as a representative of the CyberGIS Center


Required Education and Experience:
  • BA/BS in computer science, geographic information science, computer engineering, information science (informatics), earth science, math/statistics, computational science or a related field. Alternate degree fields will be considered/accepted if accompanied by equivalent experience (depending on the nature and depth of experience as it relates to cutting-edge geospatial information and computing technologies)
  • Five years or more programming experience with C/C++/Java and scripting language such as JavaScript, Python, or Shell.
  • Experience in code management (e.g. git/svn, issue tracking, continuous integration).
  • Knowledge and experience in software engineering and team-based software development.
  • Development experience in commercial and/or open source GIS tools and technologies


Preferred Experience:
  • Familiarity with web-based application development (e.g., JavaScript, PHP, HTML, REST) and geospatial JavaScript libraries (e.g., OpenLayers, ArcGIS JavaScript API).
  • Experience in code management (e.g., git/svn, issue tracking, continuous integration).
  • Experience in parallel computing (e.g. MPI, OpenMP, GPU) and/or data-intensive programming (e.g. Hadoop, Spark)
  • Experience with database systems (e.g. MySQL, MongoDB, or Cassandra) and spatial databases (e.g. PostGIS or ArcSDE).
  • Experience with cloud computing (e.g. OpenStack, AWS, Docker).
  • Experience in programming geospatial visualization tools (e.g. based on OpenLayers/Leaflet, GeoServer/MapServer).
  • Experience in system programming, administration, and/or trouble-shooting in Linux/Unix environment.
  • Ability to interact with people in a wide range of educational, scientific, and engineering disciplines to advance CyberGIS, cyberinfrastructure, high performance computing and their applications


This is a regular academic professional position at NCSA and is an annually renewable, 12/12, 100%-time appointment with regular University benefits. Salary is commensurate with experience and start date will be as soon as possible after the close date of the search. Applicants must possess required education and experience by start date of position. Interviews and hires may occur before the closing date; however, all applications received by the closing date will receive full consideration. For further information regarding our application procedures, you may visit http://www.ncsa.illinois.edu or email NCSA-HR@illinois.edu

To apply, please create your candidate profile at http://jobs.illinois.edu and upload your cover letter and CV/resume by the close date (6/05/17). Contact information for three references must be included on the application (letters maybe also be uploaded or sent to the contact below). For full consideration, candidates must complete the Hiretouch application process by the above date. The University of Illinois conducts criminal background checks on all job candidates upon acceptance of a contingent offer.

The University of Illinois is an Equal Opportunity, Affirmative Action employer. Minorities, women, veterans and individuals with disabilities are encouraged to apply. For more information, visit http://go.illinois.edu/EEO . To learn more about the University's commitment to diversity, please visit http://www.inclusiveillinois.illinois.edu



College Name or Administrative Unit: Vice Chancellor for Research
Category: Academic Professional
Title: Research Programmer / Senior Research Programmer - National Center for Supercomputing Applications (A1700102)
Open Date: 02/23/2017
Close Date: 06/05/2017
Organization Name: Supercomputing Applications

PI97618265