This job has expired, please see additional jobs below
Senior Software Engineer
Pearson
San Jose, CA, United States
Job Details - this job has expired, please see similar jobs below
Description
We are looking for a highly motivated, self-driven software developers to join our Predictive Analytics engineering team. Members of the team will have the opportunity to work with some of the largest education datasets in the world gathered through Pearson’s online learning products.
The core mission of the Analytics Learning team is the extraction of actionable information from the data to improve Pearson products and learning content; thus, the position provides the opportunity to engage in cutting-edge development and to make a substantial contribution to learning and instruction. Our systems are cutting edge, REST based services, written in Java and Scala that utilize NoSQL persistence and near-real time analytics over a AWS Kinesis feed, all deployed in an AWS cloud infrastructure. Sound interesting?
We are bold thinkers and standout innovators who motivate each other to explore new frontiers in an environment that supports and inspires us to always be better.
Responsibilities:
• Designs and implements new, unit tested, software as well as maintains and enhances existing software
• Actively participates in requirements, architecture, and design meetings
• Enjoy a healthy technical debate but know how to collaboratively solve problems that move everyone forward
• Use logical analysis, theoretical deduction and sound reasoning to troubleshoot challenging technical and business problems
• Contribute to continuous integration pipeline deploying into Cloud/EC2 Architecture
• Work efficiently and collaboratively in an Agile (Scrum or Kanban) team environment
• Follow DevOps practices - Own software application(s) and code from development through deployment
• Will work with Big data technologies(Kafka, Cassandra) that deals with large scale distributed data processing
Qualifications:
• The ideal candidate will be detail oriented, self-directed, self-motivated, with a strong capacity for working successfully and flexibly with members across the organization.
• Stays current on industry trends and formulates an opinion on the pros and cons of each
• Easy to work with, flexible, stays confident and optimistic in face of resistance and challenges
• Experienced at software performance, scalability, maintainability, reusability and security
• Good foundation in computer science, with strong competencies in basic data structure, JVM concurrency, thread-safe design, OO design and architecture for solving day to day problems
• Ability to independently learn and actively seek new skills and knowledge to advance the development capabilities of the organization
• Strong communications skills and the ability to communicate technical concepts to non-technical people and work with a variety of internal and external development groups
Education and/or Experience
• Bachelor’s degree in Computer Science / MIS or equivalent experience required.
• Minimum five (5) years experience in software engineering and design.
Required
• Java
• Web API experience
• Database Design (SQL or NoSQL)
• Maven or similar build tool
• Experience with unit testing and mock frameworks
• AWS or other Cloud experience
• Git or similar source control system
• Willingness to learn new technologies
• Strong foundation in Linux
Preferred (Nice to have)
• Any functional language (Scala, Python, JS/Node, Haskell),
• Cassandra, Spark, or other Big Data Technologies
• Experience with high volume systems
• Experience with Ubuntu Linux
• Understanding of best practices in security (SSL, TLS, SSH, Public Key Encryption, etc)
• Experience with REST based web services
• Understanding of TCP/IP based computer networking
• Experience with Jenkins
• Experience with performance optimization