Python Developer

Wrocław · Natural Language Processing

Job openings     Python developer

Python Developer

Salary range:

  • up to 10 000 - 16 000 PLN net + VAT (B2B)
  • up to 8 000 - 12 800 PLN gross (employment agreement)

The team

We are a small team that combines research and engineering skills to provide robust language technology for health apps. This technology includes our in-house software for understanding medical language, but also health check-up chatbots and voice assistants (such as Symptomate skill on Google Assistant). Those chatbots and voice assistants are powered by our customizable back-end called Infermedica Bot Framework.

Our team is responsible for delivering stable, quality software that will work in production environments. Technical skills are no less appreciated than knowledge of NLP or ML algorithms.


We're looking for a skilled software engineer with excellent knowledge of Python 3. Ability to design software, follow modern practices, and learn new skills are important qualities we seek in a candidate. Knowledge of Natural Language Processing (NLP) or Machine Learning is not required. We’ll provide training in our existing technology as well as those NLP concepts that will be needed for this role.

The successful candidate should be able to demonstrate:

  • A degree in computer science, engineering or a related field
  • Good knowledge of Python 3 and proven experience using it
  • Good understanding of algorithms
  • Knowledge of software engineering and software design
  • Experience in working on larger software projects with version control
  • Understanding of unit testing
  • Unix systems (Linux or Mac)
  • An open mind, with no rigid attachment to any specific technologies
  • The ability to work in a team as well as to make self-directed designs and decisions
  • The ability to summarize and discuss the results of experiments in a clear way
  • Good communication skills and fluent English communication

Experience with the following will also be helpful:

  • Docker
  • JS and Vue
  • Graph algorithms and NetworkX library
  • Bash scripting
  • Jupyter notebooks
  • py.test
  • Voice assistant or chatbot platforms
  • NLP libraries
  • Intent recognition tools
  • Foreign languages other than English


Your role

We’re facing high interest in our chatbots from potential customers and need to expand our team with a skilled software engineer to help us develop the Infermedica Bot Framework and make it more customizable. This software is written entirely in Python 3. The framework uses Infermedica’s diagnostic engine to provide diagnostic questions and show the most likely conditions given users’ symptoms.

We offer a unique opportunity to work on medical chatbots and clinical NLP tools that will be used by real customers of healthcare and insurance companies. Your daily tasks will include the following:

  • Maintaining and expanding our framework that powers chatbots and voice assistants (Python 3)
  • Proposing and implementing new features of the chatbots
  • Reviewing software design and suggesting improvements
  • Recommending and implementing new algorithms of dialogue control
  • Participating in discussions with clients on possible customization and improvements
  • Deploying and configuring chatbots and voice assistants on popular platforms (such as Google Assistant)
  • Helping customers integrate their front-end with our back-end
  • Testing conversation flows, writing conversation scenarios that will serve as test cases
  • Collaborating with medical professionals and NLP experts
  • Working with translators and customers that need chatbots in various languages

Please note that our chatbots are to perform health check-ups (as our Symptomate chatbot does), not to entertain users with the pointless conversation. The conversation flow is largely dictated by our diagnostic engine. This means we’re not into playing with Deep Learning to generate plausible replies. We use tools based on Machine Learning to recognize user intent in underlying messages and you’ll have a chance to improve this process.

You must have an open mind and creative ideas. An empirical approach to solving problems is strictly required. We prefer the most straightforward solutions whenever possible.


We're committed to building an open and supportive environment where you can do your best work and improve your competence. You will be working with great people, and we will help you lead a healthy life outside of the office. What benefits do we provide?

  • Employee Stock Ownership Plan
  • Flexible forms of employment
  • Flexible working hours
  • Any gear you need
  • Ability to work remotely
  • Paid vacations (also for B2B)
  • Private health coverage (PZU Zdrowie)
  • Free consultations with a doctor in our office
  • Training budget
  • Gym membership (MultiSport)
  • Lunch discounts

Next steps

If this sounds like a good fit for you, apply now by clicking the button below. We need to know where you are as a developer, so your application must include your CV and links to your online profiles (LinkedIn, GitHub, etc.).

Interview steps:

  1. A short call with selected candidates. It would take about 40 minutes.
  2. Coding task as homework. You would have one week to do the task in the most comfortable time.
  3. Next, two interviews are planned. Technical interview with NLP team members and interview with CTO to better understand your experience, expectations, and motivation. This would be done remotely and could take about 2 hours in total.
  4. Job offer proposal, if successful.

When you pass all steps, we’d be more than happy to have you on board!

1 vacancy

Contact person in this recruitment

Oleksandra Chernyak
Recruitment Manager

Share offer

Recruitment powered by tomHRM