Esri is looking to build the next generation of ArcGIS Enterprise, a suite of products delivering state-of-the-art mapping and analytics capability to thousands of customers and millions of users worldwide. The team builds cutting-edge, highly-scalable, and reliable distributed software for on-premises and the cloud to make maps, geographic information, and analyses available on any device, anywhere, at any time.
Requirements
- 2+ years of experience designing, building, and delivering web applications
- In-depth knowledge of the core JavaScript/TypeScript language and experience building object-oriented JavaScript
- Experience using and developing applications with JavaScript toolkits and UI frameworks/libraries (such as React, Vue, Angular, jQuery, Dojo, and more)
- Extensive experience with HTML, DOM, CSS, event model, and cross-browser development
- Experience with AJAX, JSON, REST
- Experience with version control systems such as Git
- Knowledge of Jupyter Python Notebooks, JupyterLab, and its extensibility model
Responsibilities
- Envision, design, and develop maintainable and reusable web applications and UI modules for large-scale deployment and management
- Rapidly prototype web applications to showcase new concepts and ideas
- Drive the REST API design, required for integrating the web application with back-end web services
- Create a rich developer-friendly toolkit to consume new server-side GIS functionalities, using the latest relevant techniques and best practices
- Apply good software design and development practices in daily activities
- Write comprehensive technical design specifications and support documentation
- Conduct code reviews and provide constructive feedback to team members
Other
- Participate in agile development processes and contribute to sprint planning, standups, sprint reviews and retrospectives
- Excellent problem-solving, attention to detail, verbal and written communication, design, development, and debugging skills
- Ability to work independently and in groups to effectively participate in the software development life cycle
- Bachelor's in computer science, engineering, mathematics, GIS, or related field
- Master's in computer science, engineering, mathematics, GIS, or related field