Web Developer

Web Developer

Regular price

About the job

Core Skills Required

The developer performs a range of tasks relating to managing and making available the collections-related metadata and digital historical and institutional assets of the Museum. The rapidly growing digital collection includes nearly one hundred million archival image files and photographs, forty thousand hours of digital video and audio, and is currently implementing an enterprise DAM system to house these assets. The developer is responsible for integrating this collection with multiple external systems containing metadata related to collection materials. The work requires strong attention to detail and may include upgrading systems (e.g., migrating to new servers or to the cloud and migrating existing systems to new versions of languages or databases) and troubleshooting errors. These systems are largely Linux-based and are built with Ruby on Rails, PHP, MySQL, Solr, Python, Java, and Linux shell scripts. Back-end systems include export/import and Realtime HTTP integrations using various REST APIs. The main public face of the systems providing access to the collection can be seen at USHMM Collections Search, https://collections.ushmm.org , which is a highly customized and extended Ruby on Rails application named Blacklight.

Write clean, maintainable, and well-documented code in appropriate languages to best achieve required results such as Ruby, Python, PHP, JavaScript, HTML and CSS, Linux shell (e.g., bash)

Collaborate closely with other developers and with technical and non-technical team members as needed Document existing systems and code that may lack sufficient documentation, through inspection and interviews with other team members Learn and become comfortable in a highly complex, evolving technical environment, and feel comfortable asking questions, making recommendations, and proposing technical solutions with technical and non-technical project team members Troubleshoot and resolve high-priority issues affecting the live environment, which includes sites and applications that utilize a variety of frameworks, data sources, or front-end systems Be a member of an Agile scrum team; participate in sprint planning meetings, stand-up meetings, and retrospectives; assess progress against tasks and adjust as needed Familiarity with at least two server-side programming languages such as Ruby, PHP, Python, or Java Familiarity with front-end web development (JavaScript and Javascript frameworks, HTML, CSS) Familiarity with at least one MVC framework (Laravel, Ruby on Rails, Spring, Yii) Familiarity with the Linux environment and shell scripting with bash or similar

Experience with theory and practice of relational databases such as MySQL or PostgreSQL

Ability to diagnose and troubleshoot issues

Understanding of the components of HTTP requests and responses

Familiarity with consuming and creating REST APIs

Understanding of the fundamentals of algorithm and data structures

Experience with web application security best practices and the design of secure systems

Expertise in software engineering practices including version control (Git preferred)

Ability to communicate with other engineers, staff, and management

Familiarity with textual search engines such as Solr or Elasticsearch

Experience migrating database-backed live systems from system to system

Experience with cloud tools and developing in a hybrid on-premises and cloud environment

Experience working with end users to translate requirements into engineering systems

Familiarity with NoSQL databases

Familiarity with unit tests, continuous integration, and continuous deployment

Bachelor’s Degree

Radiant Digital is committed to delivering innovative technology solutions. Our client-centric engagement model increases efficiency and effectiveness!

      Sign In For Details

      Mentorship at Nestria

      Learn from the Best

      Remove the uncertainty of joining a new field. Get advice from those who’ve been there, on whatever topics you struggle with.

      You may also like