Senior Java Developer for Imagine Software (Dnipro)

Dnipro, Ukraine

Apply

Imagine Software Inc. is a software development and application service provider for the financial services industry.

Founded in 1993 by a handful of technical and financial experts drawn from some of the largest and most prestigious Wall Street financial institutions, Imagine Software now consists of hundreds of professionals on four continents, supporting the needs of thousands of users worldwide.

Imagine's reputation for delivering tangible competitive advantage is based upon proven innovation that enables users to stay abreast of the market. Imagine Software puts institutional-grade functionality, broad cross-asset instrument support, and the ability to employ any trading strategy in the hands of sell- and buy-side businesses of all sizes.

Read more about the client

Description

On behalf of Imagine, Ciklum is looking for Senior Java Developer to join our Dnipro team on a full-time basis.

 

Imagine Software is a leading provider of real-time investment management solutions worldwide. Its flagship product, the Imagine Trading System, is a cross-asset trading, portfolio, and risk management solution available as an ASP (hosted) solution or an enterprise application. Developed for alternative investment companies of all sizes, Imagine Software serves thousands of users worldwide with its unique combination of proven enterprise functionality, comprehensive data management and business process automation.

 

A career path at Imagine Software represents one of the most comprehensive opportunities to be on the front lines of the complexities and nuances of the global financial markets. Employees work and collaborate with some of the world’s most elite financial institutions and utilize leading-edge technologies to solve complex business challenges. Employees assist in enabling clients of Imagine Software’s award-winning system to achieve key benefits for their organizations–maximizing returns and managing risk, achieving transparency, and gaining operational efficiencies.

Responsibilities

  • building and maintaining large scale software systems with long life spans
  • building Internet scale distributed systems or high volume client/server systems
  • evaluating multiple technical approaches and selecting the most effective

Requirements

  • Strong Computer Science fundamentals: Operating system concepts; Data structures and algorithms; Complexity analysis; Multithreading/concurrency
  • Demonstrated expertise in building and maintaining large scale software systems with long life spans
  • Experience in building Internet scale distributed systems or high volume client/server systems
  • Understanding of accessibility and security compliance
  • Understanding of fundamental design principles behind a scalable application
  • Basic understanding of front-end technologies, such as JavaScript, HTML5, and CSS3
  • Strong unit test and debugging skills
  • Passionate about performance optimization and distributed systems, finds enjoyment in profiling code and figuring out which piece of the software can be scaled most effectively
  • Experience evaluating multiple technical approaches and selecting the most effective
  • Good understanding of RESTful service design, API design and best practices for building resilient and maintainable distributed systems.
  • Prior experience in program management or project leadership desirable.
  • 5+ years of professional experience with Java

Knowledge of:

  • Java: JDK/Core, Spring Framework (MVC in particular), Spring Security, jUnit, Tomcat, Apache Commons, Maven, Docker
  • CI tools (Teamcity)
  • MongoDB
  • JSON/BSON
  • RabbitMQ
  • JavaScript
  • Web Services (REST/SOAP)
  • Jira/Confluence

Personal skills

  • Great problem solving abilities
  • A strong desire to learn and share new tools and techniques
  • A commitment to quality and the drive to ensure goals are met
  • A passion for writing software
  • Ability to quickly adapt to new technologies
  • Attention to details

What's in it for you

  • Unique working environment where you communicate and work directly with client;
  • Variety of knowledge sharing, training and self-development opportunities;
  • Competitive salary;
  • State of the art, cool, centrally located offices with warm atmosphere which creates really good working conditions.