5+ years of professional software development experience.
3+ years of development experience in Java.
Strong experience in developing complex web applications (using Spring/JEE).
Strong knowledge of database and file storage concepts, query language and technologies like Hibernate.
Experience working in Unix/Linux/Mac OS X environment.
Knowledge of software best practices like TDD, design patterns and continuous integration.
Knowledge of modern web servers (Tomcat, Jetty).
Knowledge of software development life cycle.
Experience with teamwork tools such as git/Bitbucket, JIRA, Jenkins/Bamboo, Confluence.
Experience to build reliable multithreaded applications.
Must have analytical abilities with trouble-shooting skills.
Result-oriented with attention to details.
Verbal and written communication skills.
English reading/writing — Intermediate.
A willingness to do what it takes to get things done.
Strong aptitude for learning new technologies.
Ability to work independently within development team.
Experience in developing web services with high load (20K+ QPS) is a bold plus.
Knowledge in Ad Serving, Affiliate marketing or Real-time bidding areas is a bold plus.
Knowledge of Applied math (Mathematical optimization, Mathematical statistics, Probability theory, Approximation theory, Graph theory) is a bold plus.
Experience with network diagnostic and traffic simulation tools (JMeter, soapUI) is a plus.
Experience with performance testing is a plus.
Computer Science Degree or equivalent, MS is a plus.
Experience with Big Data: Hadoop, Spark is a plus.
An interesting work on long term projects in friendly team.
Prospects of career growth.
Communicate with development team, product owners and business users.
Evaluate feature requests against solution architecture and non-functional requirements.
Provide estimates of development and integration efforts.
Identify and report project technical risks.
Participate in planning of development strategy for each iteration.
Drive feature development lifecycle as part of Agile process.
Develop unit tests (using JUnit, JMock) and integration tests along with new or redesigned feature development.
Document development results in source code and wiki.
Document issue fix results in issue tracking system.
Setup development environment.
Collaborate with Solution Architect to maintain solution architecture.
Collaborate with QA team to improve and extend test automation.
Assist customer support on analyzing and resolving customer issues.
Epom is a cross-platform ad-serving platform for ad campaigns management, monitoring and optimization. Epom provides customers with a unified platform to serve ads on display, mobile web and mobile applications.