Full-stack expertise including relational databases, search server, middle-tier, and front-end UI components
Expert knowledge of Java 8 and experience with core Java components and frameworks, such as Spring, Hibernate, and GWT
Strong understanding of OO fundamentals, data structures, and algorithms
Solid background with relational databases (MySQL/Postgres) and SQL DML/DDL, and with ORM tools (Hibernate)
Experience with Python/Jython, Go, bash
Familiarity with development under MacOS/OSX and Linux, including scripting and tools
Front-end development experience, with expert knowledge of HTML/CSS/Javascript/AJAX
Hands-on experience with Google Web Toolkit (GWT)
Experience with queueing (RabbitMQ, etc.) including point-to-point and publish/subscribe
Familiarity with deploying to cloud platforms such as AWS
Familiarity with AWS components including S3 and EC2
Hands-on experience with security standards such as OAuth2, JWT and Spring Security.
Ability to design systems with support for scaling, HA, and DR
Thorough understanding of REST API design and consumption
Ability to absorb, understand and communicate written and verbal information and ideas, and to deliver in a concise manner that is easily understood by others.
Ability to apply critical thinking to identifying the strengths and weaknesses of alternative solutions, conclusions or approaches to problems.
Desired: Experience with Java build and testing frameworks, such as Jenkins, Ant, Maven/Gradle, and JUnit.
Experience with other languages a plus
Responsibilities:
Design, document, develop, and deploy new features and updates to EP's Scenechronize / SmartHub product
Integrate with internal and external systems and create externally facing client APIs
Work in a Scrum/Agile environment to release on a regular cadence while ensuring high velocity. Participate in refinement and estimation of stories.
Collaborate closely with other developers, Product and Project Management, QA, Architecture, and DevOps to ensure that the right solutions are being delivered.
Collaborate with external integration partners to ensure solutions solve mutual goals.
Refine feature requirements with Product Management on a regular basis.
Generate automated unit/integration tests, CI/CD artifacts and monitoring infrastructure as part of deliverables.
Continuously look for opportunities for improvement in practices, coding standards, SDLC and business solutions in a variety of areas.
Identify, document and drive standards in the API/services area.