This position is responsible for leading a team of developers to drive front-end development standards and work to continually enhance the customer facing aspects. This person must be able to contribute to architecting solutions, enhancing frameworks and think in terms of producing solutions that are reusable, simple and able to be extended by other developers. Creative programming and problem-solving skills are a must, as is the ability to work iteratively.
Essential Job Responsibilities:
- Provide technical guidance to team members in coding best practices, providing instructions, and debugging code written by team members.
- Write code that is performant, secure, maintainable, clear, and concise.
- Contribute to architecture and build UI boilerplates and JS frameworks to allow developers easily create new apps quickly.
- Build atomic, customizable, reusable pieces to be used throughout multiple applications following design patterns for separation of concerns, code re-usability, security and performance.
- Improve the reliability and efficiency of our core systems.
- Estimate engineering effort; attend daily scrums, ensure functional and non-functional deliverables are on schedule, perform code review, plan implementation, and help rollout system changes to production.
- Execute and deliver on business and technical objectives.
- Ensure software meets all requirements of quality, security, modifiability, extensibility etc.
- Troubleshoot and debug issues that span multiple systems.
- Manage technical risk and debt for the team.
- Communicate and coordinate with cross-functional business, offshore and third-party development groups and contractors.
- Support rollouts, analyze technical issues and be available for on-call duties to lead resolution.
- Create and maintain technical documentation to assist with ongoing support and maintenance of applications.
- Recognize process and code inefficiencies, and proactively recommend resolutions.
Please note - this job description is not designed to cover all activities required of the employee.
Required Qualifications/Technical Skills
- At least 10 years of hands-on professional software development experience in building and maintaining a high-performance, reliable, secure, scalable enterprise production environment using modern frameworks with a focus on front-end and UI technologies.
- BS (or equivalent) in Computer Science or related discipline.
- Strong Computer Science fundamentals with competencies in software design, data structures, and problem-solving.
- Experience in SOA, REST, Micro Services System Architecture.
- Extensive use of APIs and hands on experience with MongoDB, and Redis.
- Experience building responsive, platforms/browsers solutions.
- Experience with CSS processors: SASS, LESS and code analysis tools (e.g. JSLint).
- Expert knowledge of how browsers work – regarding optimizing page load times, rendering, caching and memory.
- Experience using, integrating and optimizing front-end build tools (Grunt, Gulp, Webpack, etc).
- Good understanding of server and AWS cloud computing technologies.
- Proficient understanding of code versioning tools, in particular GIT.
- Experience using Linux operating system, Apache, nginx.
- Familiarity with high availability and scalability concepts.
- Experience with Continuous Integration and automated testing strategies.
- Experience with at least one message platforms.
- Expert knowledge and application of the concepts and advantages of using compression and other optimization techniques (sprites, etc.) to improve front-end performance.
- Experience with Learning Management Systems and development of Content Management System (e.g. WordPress, Drupal, Adobe Experience Manager) or Content Delivery.
- Expertise with Google Analytics tools.
- Experience in shipping solutions at scale.
- Ability to work with in-house UX/UI design team, attention to pixel-perfect detail, and the ability to work with concepts and sketches.
- Able to identify anti-patterns and provide refactoring recommendations.
- Self-motivated; independent, organized, and proactive.
- Ability to quickly adapt and learn new technologies.
- Ability to juggle multiple tasks and manage expectations at the same time.
- Strong communication and collaboration skills; ability to communicate technical concepts to both technical and non-technical collaborators and stakeholders.
- Comfortable working in an agile/iterative development environment.
- eCommerce experience is a plus.
- Ability to work in the United States for any employer.
- Ability to work full-time in Norton’s New York Office.
W.W. Norton & Company is the oldest and largest publishing house owned wholly by its employees. We strive to carry out the imperative of its founder to “publish books not for a single season, but for the years in the areas of fiction, nonfiction, and poetry”. For more information about the Company, please visit us online at: http://www.wwnorton.com .
W.W. Norton & Company, Inc. is an equal employment opportunity employer and considers qualified applicants for employment without regard to race, gender, age, color, religion, national origin, marital status, disability, sexual orientation, or any other protected factor.