Java Developer

Prague, Czech Republic

Striving for excellence is in our DNA. Since 1993, we have been helping the world’s leading companies imagine, design, engineer, and deliver software and digital experiences that change the world. We are more than just specialists, we are experts.

DESCRIPTION


Currently we are looking for a Java Developer for our Prague office to make the team even stronger.

The role is for a Java developer working on the pricing and risk platform that supports the equities derivatives business. The role will involve development of various components of the strategic system and working closely with other technology teams in London, New York, and Hong Kong.

The role-holder will be involved in all aspects of software delivery, including analysis, design, development, deployment and hand-over to the support team. The role-holder will be expected to know or be willing to learn Java as this predominant language used however also several other programming languages are used to vary degrees including C#, PowerShell and SQL. There is also some use of an in house proprietary functional language.

Responsibilities

  • Contribute to development of the pricing and risk platform;
  • Work on all stages of the development lifecycle (analysis, design, implementation, unit and integration testing);
  • Analyze new requirements to find the most appropriate technical solution with high attention to simplicity, performance, fault-tolerance and supportability;
  • Be willing to provide second line support as part of a support rote;
  • Conduct automated software testing, TDD, test frameworks.

Requirements

  • Be proficient in Java with at least 3 years of experience:
    • Class vs. object;
    • Wrapper classes;
    • Strings;
    • Serialization;
    • Generics;
    • Exceptions;
    • Concurrency;
    • Streams;
    • Lambdas and functional interfaces;
    • Time API;
    • JDBC, JMS, JMX;
    • Class loading;
    • Garbage collection.
  • Be proficient in software development best practices with at least 2 years of experience:
    • CI/CD/release management;
    • Coding style/static code analysis;
    • Build tools (e.g. Maven, MSBuild);
    • Code reviews;
    • Documentation.
  • Be technically proficient - knowledge of the following is required:
    • SOLID principles;
    • OOP design pattern;
    • Enterprise integration patterns;
    • Complexity theory;
    • Data structures;
    • Algorithms;
    • General problem solving.
  • Be proficient in relational databases:
    • DML, DDL, ACID;
    • Indexes;
    • Views;
    • Stored procedures;
    • Normalization;
    • Transactions;
    • Query plan.
  • Be proficient in the following frameworks:
    • Spring Core;
    • Camel;
    • Maven;
    • ORM (Hibernate or other);
    • Guava;
    • Aspects.

We offer

  • We offer the possibility to work on full product lifecycle – from concept to delivery into production;
  • We are open for innovations and modern technologies;
  • We offer guaranteed professional growth through the technology trainings and technology communities inside EPAM;
  • We are proactive Agile/Scrum/XP practitioners;
  • We propose to realize your ideas and potential within the democratic environment;
  • Using English on a daily basis, communication with people from different countries;
  • As a team - we bring in all our empathy, synergy and drive to focus on the client – bringing world class experience online;
  • Competitive compensation depending on experience and skills;
  • Comfortable and modern offices in Prague 4;
  • Benefit program (5 weeks of vacation, 5 sick days, wage compensation for the first three days of illness, meal vouchers, flexi pass, annual coupon of Prague city public transport, multisport cards);
  • Start ASAP/negotiable.