Position: Middle/Senior/Lead Full Stack Developer
Company: AgileEngine
Category: JavaScript
Experience required: 3y
English level: intermediate

Shutterstock is a growing, fast-paced, entrepreneurial company operating within a disruptive industry for over 15 years. Well-positioned as a leader in the digital content space, Shutterstock has the largest crowd-sourced digital content library in the world, including leading collections of images, vectors, music, and video. We manage a library of creative building blocks for an expanding global customer base. 

Shutterstock is looking for passionate technologists to join our Bigstock engineering team to help drive the future growth of our e-commerce platform. You will be working with highly motivated and talented engineers on a full-stack system with quality, performance, and scale in mind at every step of the way. 
Our core belief is that the customers are our number one priority so we work hard to deliver value back to them with everything we do. We believe strongly in team ownership of systems, which includes defining the vision of services to prioritization of projects. 

Responsibilities: 
- Contributing to all aspects of the services under the team’s ownership, which includes design, implementation, refactoring, automated testing, deployment, and uptime of the services
- Helping other team members grow as engineers through code review, pairing, and mentoring
- Improving internal team processes by keeping what's working, throwing away what's not
- Collaborating on the vision of the services under the team's ownership
- Building the technology the right way: for us, this means simple, well-tested systems that gradually grow over time, and which provide plenty of insight into production performance
- Engineers are expected to support systems they develop in production which involves on-call. The actual periods and frequency vary by team. 

Requirements: 
- Passionate about what you do and care deeply about the things you build.
- 5+ years of software development experience 
- Experience with Node.js, Javascript and React 
- Knowledge of how the Web works and how to make it efficient (HTTP, caching, page rendering, etc) 
- Has a good understanding of continuous delivery, writing unit tests, and automated testing 
- Ability to craft simple and elegant solutions to complex problems 
- Able to clearly communicate to technical and non-technical audiences
- Experience building eCommerce applications/websites 

Would be a plus: 
- Advanced experience with a React front-end framework or NextJS 
- Knowledge of state management systems (such as redux) 
- Full-stack software development experience 
- Experience working with or building REST APIs 
- Experience unit testing front-end applications with Enzyme, Jest, and react-testing-library or similar