Job #: 2398
Title: Front End Developer
The Cloud Platforms: Core Development team develops software to automate and manage the infrastructure and services leveraged by business applications. This includes providing shared services such as authorization, logging, and application configuration management; application SDLC tools and workflows to manage the process from requirements to development to testing and deployment; and automation and inventory to provision the infrastructure itself.
The Front End Manager role is responsible for front end software development and management of a team of front end developers within Core Development. The Front End Manager will be expected to be hands-on and take on software development tasks with an ideal ratio of 40% management, 60% development.
This role partners with the Back End Manager reporting to a Director or Senior Manager of Core Development. The Front End Manager will be required to gain a complete understanding of business requirements and the needs of the client.
The Front End Manager will be expected to work closely with the UI/UX Designer for user interface design and work closely with the Back End Manager for system design.
This person will provide thought leadership in the full lifecycle from concept to production.
Working in conjunction with Core Development leadership, this person will be responsible for implementing the business and technical strategy within the team and ensure both user experience and development practices are in line with company best practices and policies.
Ideal candidates for this position would be:
• Developers with significant expertise in ReactJS and Redux and some lead experience
• Ensure project teams are staffed with appropriate resources, including the recruitment of any additional front end developers
• Ensure the front end development staff is engaged throughout software development lifecycle
• Evaluate performance on a quarterly basis, coaching/mentoring, and assist in creating Individual Development Plans for career growth
• Forecasting resourcing & staffing needs and effectively utilizing all available resources
• Oversee and set the direction for the front end team, ensuring reliable, secure software with minimal bugs
• Establish and track metrics related to key performance objectives and service levels
• Oversee the execution of multiple projects in a simultaneous environment ensuring deadlines are being met, including metrics for software quality and security
• Develop, implement and enforce best practices and operating standards
• Identify and escalate potential concerns related to project initiatives and recommend viable solutions
• Stay current with technology and industry best practices to ensure that skill set/knowledge base remains broad and current
• Maintain proficiency with Application Security requirements and best practices
• Hands on development of front end applications and integration with services
• Lead complex programming tasks and perform code reviews of various development tasks
• Implements automated unit and integration tests and ensures the practice is followed consistently
• Participates in user experience and system design and specifications, program logic and flow-charting, development, testing, debugging, documentation, and support
• Provides analysis of problems and recommends solutions
• Experience with ReactJS, Redux, Webpack, NodeJS, Express, and CSS is a plus
• Experience in integrating web services using REST and JSON
• Must have a strong foundation in automated testing, including unit, integration, system
• Experience with JS and UI testing and code analysis frameworks like Mocha, Istanbul, Enzyme, ESLint, Selenium
• Experience with Agile software development methodologies (Scrum, Kanban)
• Experience with Application UX Designs
• Unix / Linux experience
• 4 year college degree
• 2+ years of experience leading a software development team; management experience is a significant plus
• Strong communication skills with a track record of working with and collaborating with teams
• Ability to influence others
• Must possess the ability to manage multiple on-going epics defined at a relatively high level, work with the team to define detailed user stories, and provide oversight through implementation and testing
• Strong analytical and quantitative skills with the ability to break down and communicate complex issues, ideas and solutions
• Be able to create and articulate design / implementation options and tradeoff to peers, tech leads, and management
• Ability to clearly document application designs and the related management and support procedures
• Ability to understand all phases of SDLC
• Ability to quickly ramp-up on new / emerging technologies as required