Software Developer C++/Python

Required skills:

  • Open mind and willingness to explore new areas – meteorology is a rather specific field. However, we concentrate more on developing software tools to be used by meteorologis rather than meteorological science.
  • C++ language on advanced level (standard library, Boost, templates, exceptions, etc). If you are a really good programmer who does not use C++, you can still apply for the job if you are willing to learn C++ to reach advanced level.
  • Python language (at least on intermediate level)
  • Experience with software development in a team (e.g.  in corporate environment,  as part of an open source project)
  • We are only looking for people interested in long term employment.
  • English language on at least intermediate level. All internal documentation is in English and our customer base is spread around the world. You will ocassionally be communicating directly with our customers both in oral and written form.

Candidate advantages:

  • Understanding efficiency of code and algorithms (both in terms of speed and memory consumption)
  • Creativity in designing new algorithms
  • Experience in user interface design
  • Qt UI framework experience
  • Knowledge of scientific Python modules such as numpy and scipy
  • Basic experience with GIS systems and formats (SHP, GeoJSON, GML)
  • Experience with web services and web development in general
  • Experience with cloud technologies (especially in Amazon EC2)
  • Basic grasp of geometry and numerical computations
  • Linux or Windows OS administration skills
  • Willingness to travel to foreign countries

Technologies used in our company:

We use C++ and Python to write most of our desktop software but we also have projects in Java. We create complex web applications in TypeScript using frameworks and libraries like Angular, NestJS, Leaflet and Material UI. In the web development we take advantage of reactive programming using RxJS and NGRX.

Bash shell scripts are used to some degree. We use XML/XSLT transformations for producing our documentation. We make use of HTML, Libre Office and PDF for layout of meteorological forecast products. We are open to whatever platforms and technologies that will make us more efficient.

We use plenty of infrastructure systems to make our work easier: version control systems (Git, GitLab), automated cross compiled builds, continuous integration (Atlassian Bamboo), issue tracking (JIRA), Wiki (Confluence) and others.