Software Engineer (Java) // Obninsk, Kaluga, Ulyanovsk, Minsk, Moscow, Saint Petersburg, Kazan, Gomel, Kharkov

Software Engineer (Java) // Obninsk, Kaluga, Ulyanovsk, Minsk, Moscow, Saint Petersburg, Kazan, Gomel, Kharkov

zimad logo

We are looking for an experienced  Software Engineer (Java) to join our professional development team.

Job Description

As a member of the development team you will;

  • Independently put the company Agile software development process into practice as appropriate;
  • Takes ownership of product subcomponents including functional specification, design & implementation;
  • Assist in the development of implementation schedules for owned sub components;
  • Develop, maintain and extend assigned software modules within schedule constraints using the company accepted coding practices;
  • Specify and perform unit testing of developed software modules;
  • Fix bugs in software modules as necessary;
  • Assist publications department as required to document the product;
  • Assist QA engineers as required to develop of test plans and isolate software faults;
  • Lead a department code review;
  • Work with other department software engineers to ensure successful development and delivery of product;
  • Report status in timely fashion as requested by Manager or project lead engineer.

Essential Criteria

  • BSc (2.1 or better) degree in Computer Science, Engineering or equivalent relevant to Software Engineering;
  • Minimum 3 years’ demonstrable experience in either C or Java;
  • Thorough knowledge of the standard library, STL containers, and algorithms;
  • Understanding of dynamic polymorphism and C specific notions, such as friend classes;
  • Familiarity with language tools, such as Valgrind etc.;
  • Implementation of automated testing platforms and unit tests;
  • Strong communication skills – both verbal and written;
  • Customer focus, result oriented and strong relationship builder with local and remote teams;
  • Adapts easily to changing priorities and thrives in a fast paced work environment;
  • Flexible ‘can do’ attitude;
  • Demonstrable interest in emerging technologies;
  • Demonstrated ability to identify problems and effectively raise issues;
  • Knowledge of English on intermediate/upper-intermediate level.

Desirable Criteria

  • Linux Kernel Object development;
  • Experience in writing, troubleshooting, and debugging networking and kernel level code;
  • Understanding of Core TCP/UDP/IP technologies such as: Streams, DHCP, Routing protocols;
  • Detail understanding of unix sockets; working knowledge of netfilter/iptables;
  • Experience with intermediate knowledge of load balancers, firewalls and wireless technologies;
  • Knowledge of data communications principles, architectures and protocols including TCP/IP, routing, switching, and Ethernet technologies;
  • Knowledge of:
    – Multi-threaded programming
    – Scripting (Python)
  • Knowledge of Test Tools / Automation, tracking systems & test methodologies;
  • Unix administration;
  • Demonstrable experience using Eclipse;
  • Demonstrated ability to initiate and contribute to technical discussions;
  • Knowledge of mobile technologies.


  • Work on a complex and interesting IT project;
  • Comfortable office in the center of the city;
  • Official employment;
  • Competitive salary;
  • Medical insurance;
  • Bonuses;
  • Flexible working hours;
  • Partial compensation for English classes;
  • Сorporate and teambuilding events;
  • Opportunity for professional growth and career development;
  • Pleasant atmosphere and a friendly team.