We are seeking a strong Senior Software Developer to be responsible for application development of edTech products. In this role, you will work in a highly collaborative, cross functional Agile team and may take a lead role on various software components. Great location, great environment, flex-time and more!
- Help define logical and physical architecture and document the architecture using UML diagrams.
- Help identify coding patterns and anti-patterns and enforce implementation of the patterns through code reviews.
- Builds a strong team using collaboration skills.
- Promotes improvements in version control, continuous integration, project build, and project automation.
- Takes ownership of tasks when others do not. Helps drive the completion of all kinds of work tasks.
- Helps break down, estimate, and provide just-in-time design for small increments of work.
- Stays abreast of industry trends, technology trends, language trends, process trends.
- Commits to completing well-defined work, and delivers on those commitments.
- Consistently follows software development methodology
SKILLS AND EXPERIENCE:
- Building Java applications with the Spring framework.
- Building Java bundles that conform to the OSGi specification.
- Prior technical lead experience with small and large teams
- Experience with development of SOA (service oriented architecture)
- Familiarity with wide portfolio of software development applications, environments and languages
- Experience with reflection, inversion of control and dependency injection frameworks.
- Knowledge of web components.
- Strong understanding of HTTP/REST/API architecture
- Creative problem solving skills and ability to effectively communicate and translate feedback, needs and solutions
- Must be comfortable working in an open, highly collaborative team environment.
- Knowledge of and desire to work in an Agile development environment.
- Excellent verbal and written communication skills required
GOOD TO HAVE:
- Elasticsearch, Lucene, or search in general preferred.
- Knowledge of search engine development, particularly with Lucene as a component
- Static code analysis tools (PMD, FindBugs, Checkstyle, etc)
- No-SQL Solutions such as MongoDB and Cassandra
- Bachelor degree in Computer Science or related field, or equivalent combination of education and recent, relevant work experience