The team needs an engineer to build and test specific components of the platform. We are transitioning our platform into production and a wide variety of work needs to be accomplished in order to stabilize and operationalize the system.
Writing production-quality, tested code.
Understanding the code base for your components in depth.
Producing technical designs and documentation at varying levels of granularity
Collaborating with our quality assurance and technical operations teams to provide outstanding customer service.
Participating in code reviews and helping the team to be effective and agile.
BS in Computer Science, Computer Engineering or related technical field.
4+ years of relevant work experience, including extensive programming experience and strong object-oriented skills including Java server-side development.
Experience as part of a team doing state-of-the art, object-oriented software development including continuous integration, test-driven-development, automated unit and integration testing.
Experience with versioning tools. GIT a plus.
Must demonstrate an understanding of software design patterns and the practical application of those patterns.
Experience with MySQL and Cassandra a plus.
Knowledge of major open source frameworks including Tomcat, Spring, and Zookeeper.
Experience with Agile development methodologies and practices.
UNIX/Linux background: facility with command-line utilities; familiarity with system administration tools and concepts.
Familiarity with distributed systems a plus.
Experience with various data interchange and representation formats such as JSON, XML, and Protobuf.
An understanding of DevOps. Experience with Docker.
Strong initiative: must be able to take high-level requirements, ask questions and get clarifications, decompose into deliverable software components, design and implement solution to meet functional, performance, and quality acceptance criteria.
Excellent communication: must be a good listener, willing to ask questions, and able to clearly communicate ideas with team members and external groups.