About
Job Description
Position Overview
Consumer Reports is seeking to hire a Senior Software Engineer as a part of one of the technology teams responsiblefor designing and building software components for the delivery of web applications to millions of Consumer Reports users. This role involves working hand-in-hand with business units to build state of the art scalable and robust web applications that are consumer centric.
Qualifications Include
* Master's degree in Computer Science or related fields with three years of relevant experience, or Bachelor's degree in Computer Science or related fields and five years of relevant experience in lieu.
* Extensive experience in software development, modern design patterns and web technologies under e-commerce enabled environments using multi-tier architectures.
* Experience with development environments that leverage Java, Spring framework, or Ruby on Rails, application servers, multi-threading.
* Experience with modern web technologies, JavaScript libraries, AJAX, JSON, HTML5/CSS3 and responsive design. Exposure to client side JS UI frameworks, understanding of HTTP protocol.
* Experience with Web Services, REST and API design. Experience with cloud services such as Amazon AWS or Heroku a plus.
* Experience with relational/SQL databases, ORM and data abstraction technologies. Knowledge of No-SQL databases, MapReduce, or Hadoop a plus.
* Working knowledge of Unix environments, including shell scripting such as Perl or Python.
* Working knowledge of working with Docker Containers.
* Experience working with Content Management Systems and understanding their features.
* Agile tools and methodologies, including continuous deployment and rapid integration.
* Experience in software architecture and design, documentation, developing and maintaining large-scale, high-visibility systems.
* Ability to solve complex technical problems and effectively communicate solutions to system architects, peers and management.
* Experience with high volume, high-availability applications and systems.
* Proven track record in developing high quality applications on schedule in a fast-paced development environment, high written and personal communication skills.
* Experience with Payment processing, PCI DSS, and OWASP secure web coding a plus.
Key Responsibilities
* Design, develop, implement, and test software modules and other technology components for consumerreports.org and related customer-facing web properties using agile software development practices.
* Develop and implement payment, billing and/or dynamic content delivery systems.
* Analyze business requirements, provide development estimates and feedback, and determine implementation/execution approaches.
* Work with other software engineers, database developers, infrastructure, operations and QA teams to design and implement quality software solutions.
* Support, troubleshoot, monitor and optimize existing software systems.
* Help streamline software development by contributing to the implementation of a continuous integration, continuous deployment, automating manual processes, and eliminating defects.
* Performs other duties as assigned but not at a higher level.
COMPETENCIES
Communication Skills - Demonstrates ability to speak, write and present information in a clear, concise and compelling manner that is tailored to a particular audience.
Interpersonal - Strong ability to forge solid working relationships with colleagues across the organization. Desire and commitment to establish a partnering and trusting relationship with internal and external people.
Time Management - Demonstrates ability to accomplish tasks by established deadlines; demonstrates discipline in using time management tools and techniques. Able to use time efficiently despite competing demands and priorities.
Collaboration - Participates and collaborates to solve issues that will benefit the organization and its customers; fosters commitment to team projects and values the contribution of team members to the overall team's success
Multitasking - Demonstrates ability to work on multiple tasks in parallel, switching attention to competing tasks as needed.