Senior .NET Developer for LanguageWire (Kyiv)

Kyiv, Gulliver, Ukraine

Apply

LanguageWire is a full-service provider of all services associated with creating, translating and processing text and graphics for numerous markets. In short, we help you transform your ideas and data into effective communication. We provide exactly what you need. We have more than 70 permanent employees located in Copenhagen, Stockholm, Oslo, Hamburg and Kiev, together with a network of more than 4,000 graphic designers and language experts from around the world. This has enabled us to specialise in building customised solutions for our customers because we always have someone on hand who knows your business and market.

LanguageWire is a leading translation company servicing clients from offices throughout Europe and we are growing rapidly! If you want to work in a young, intelligent and highly energetic team, our Gdańsk office is the place to be. In fact, we might need you just as much as you need us. We develop state-of-the-art integration solutions that are key differentiators in a positive market, and we aim at quickly adding more offerings to our kick-ass portfolio. If you think you fit the bill, consider joining us. We try, we learn and we win!

Read more about the client

Description

On behalf of LanguageWire, Ciklum is looking for a Senior .NET Developer to join the Kyiv team on a full-time basis.

We are a team of 3 developers and 1 tester at LanguageWire (check out our web-site: https://www.languagewire.com). LanguageWire is a translation agency with its own software platform. Our other teams develop a business process management system, connectors for CMS, whereas our team works on tools for translators. First of all, it is a web-application where translators work, as well as a set of micro-services under the hood. The team is located in the center of Kiev, at the Gulliver BC.

We do iterative development being close to our customers and releasing new features approximately each 3 weeks. We prefer direct communication over bureaucracy.

The company mostly uses the Microsoft technology stack (we are three times Gold Microsoft partners), hosts everything on its own servers. A dedicated team of IT administrators is responsible for the infrastructure. Together we are building our own private cloud. So it would not be a problem to get the latest .NET Framework or SQL Server version.

Responsibilities

  • Building a great product that gives the company a competitive edge;
  • Analyzing business requirements together with business analyst and product owner;
  • Creating flexible designs that fit well with overall architecture;
  • Writing maintainable and extensible high quality code;
  • Writing automated tests that prove that your code meets acceptance criteria;
  • Doing code and design reviews for your colleagues;
  • Promoting best practices and technology innovation;
  • Driving feature delivery from idea stage to release in production

Requirements

  • We write code in C# – 4 years. We use async/await a lot, so you need to understand how the compiler transforms this syntax sugar and why asyncs are needed;
  • You should know well the base class library as well as your tools: Visual Studio, the debugger. We prefer to use as little third-party libraries as possible;
  • Our services are document-oriented. We do a lot of processing, writing various parsers, readers and writers. You should care about the performance, for example, you would not load a 500 MB file into memory;
  • Our services also store records in databases on the SQL Server. We do not have hundreds of tables, though migrations can be challenging. We use Entity Framework, but then validate generated SQL queries and execution plans. You need to understand the relational mode, index scans vs seeks to produce efficient queries. For migrations it is useful to know about window functions and common table expressions. We do not follow the persistence ignorance approach;
  • Many of our services are background workers without any UI. They communicate through synchronous remote calls and the message bus. You should be able to design asynchronous communications, extend existing protocols, so that other services would not break. You also should be able to test them. We do not like test mocks and managed to write tests without them;
  • There are also web-applications with UI. The latest one has detached UI over the REST API. The client side code is written in TypeScript, we really love its typing system, almost never have problems with undefined or nulls objects. The API is built using ASP.NET Core 2.0. UI is MVVM-like powered by Knockout;
  • Besides the development as such, we are also responsible for deployments and for providing tools for operational support. Background services are Windows services, you should be able to diagnose, why the service is not starting and generally know the Windows operating system architecture and tools well. Our products are integrated with System Center Operations Manager as a health and incidents tracker based on log events and performance counters that we define during development;
  • A new service will use the InDesign Server which API is COM. So experience with unmanaged code interoperation is welcome.

Personal skills

  • You are willing to take ownership and responsibility for your work;
  • You care deeply about the quality of your work;
  • You love working in a team, and focus on team success;
  • You are open minded, you accept ideas of others;
  • You challenge your peers, ask questions and offer great ideas;
  • You are enthusiastic about technology, coding is not just work for you;
  • You are attentive to details.