Machine learning engineer Java

Fulltime Employees

5+

Requirements:

  • Fluent English
  • 10+ years of development experience

    • Experience in the development of complex programs in any programming language
    • Extensive data / text / document processing experience
    • Talent for producing maintainable code (structured, easy-to-read, tested)
  • Experience in building machine learning solutions (both NLP and non-NLP)

    • Problem definition
    • POC for possible approaches / Model selection
    • Data preparation
    • Feature engineering
    • Training, Tuning, Evaluating models
    • Error analysis
    • Post-processing (smoothing)
  • Self-reliance:

    • Ability to tackle problems on their own after receiving high level requirements
    • Ability to work from home without constant supervision and/or interaction with colleagues
  • Solid Java skills:

    • At least 3 years Java experience, up-to-date knowledge
    • Familiarity with common design patterns, dependency injection, java streams, functional programming interfaces etc.
  • Ability to work with common development tools (git, docker, gitlab, intellij, linux tools)

Plus:

  • Familiarity with the following:

    • SMILE, DL4J, Kotlin, PY4J
    • Python, Keras, PyTorch, Tensorflow, Spacy, AllenNLP
    • Docker
    • GitLab CI
  • Background in DevOps, Linux skills:

The document processing pipeline is built primarily using Java. The Java code includes machinery for executing the processing pipeline, a sophisticated Document Object Model and many processing steps – each interacting with the DOM. Some processing steps are implemented using external tools like SPACY or Keras, for which we have a Python integration in place. Python programming skills may be needed for simple scripting tasks, but the more complex problems are all to be solved in Java.

Email your resume at [email protected]