Your work will consist of designing and implementing transpilers, parsers, Domain-Specific Languages, editors, and interpreters. We do not expect candidates to be experts on these topics as we will provide the necessary training, but an understanding will be an advantage.

What would you do

Responsibilities associated with this position are:

  • Design and implement technical solutions for Language Engineering projects
  • Participate in discussions with clients (typically once every two weeks)
  • Coordinate with our project manager and other Software Engineers
  • Write technical articles for our blog
  • Contribute to technical analysis, design documents, and proposals
  • Contribute to internal libraries and products, some of which are open-source (you can find some here: https://github.com/strumenta/)

Where you will do it from

You will work full-time remotely as does the whole team, so you can work flexibly, provided your working hours can partially overlap with the rest of the team.

You will be asked to participate in a yearly company retreat typically held in Italy. You may be asked to participate in workshops with clients between 0 and 2 times a year.

What you would NOT do

  • Work extra time
  • Be constantly available

The company

We are Strumenta, a fully remote company registered in Italy. We are 5 years old, and we are a very small company (you would be the 10th team member).

In our niche, we are known globally, with clients from all over the world. We have a community of hundreds of members. Our articles have been read millions of times.

What we expect from you

We expect candidates to:

  • Know proper software development methodologies. If we have to explain to you how to use it or that you should write build scripts and unit tests, you are not the right candidate for this position
  • Being independent. If you have never worked on a software project with a good degree of autonomy, this would not be a good fit for you
  • Continuously learn and improve by studying new approaches and describing them in our technical blog
  • Be trustable. If you have a problem, we trust you to ask for help if you need it, or raise the problem with someone else if it is hard to solve.
  • Keep your word. If we agree to send an email to a client by Friday, we need to do that, consistently. This is particularly important as you will have a lot of autonomy
  • Fluency in English is strictly necessary. You will be expected to explain your technical decisions and interact with clients over Zoom speaking in English.
  • You will need a good internet connection
  • Be able to work with some overlap with Italy and the USA. You should probably live in a timezone between Central European Time and US Eastern Time.

Why work at Strumenta?

We believe we can be attractive for the right candidate because:

  • We do not believe in always being reachable and in reactive mode. We believe in working the agreed number of hours and enjoying time off the rest of the time.
  • We do not believe in working under pressure. We believe that when our team members are stressed something is wrong in the way the company works and should be corrected.
  • We offer flexible hours: while we expect to offer a certain number of hours each week to be available for meetings, everyone is able to organize their own time. If you want to take a 3 hours break to have lunch with a friend and then take a long walk, we do not need to know, provided you do your job
  • We offer a budget for training of 1K euros year
  • We are small but well organized. We do not wing it and surprise our clients or colleagues. This means you should not expect last-minute requests
  • We are treated as experts by our clients and we are appreciated. We are not borrowed hands
  • Everyone at the company works remotely: there are no first-class and second class citizens

What do we offer

For candidates not based in Italy:

  • We offer a on ongoing contract for 50K to 60K euro per year on a self-employed basis

Fore candidates based in Italy:

  • We offer a gross salary in the range 33K and 40K euro, based on experience. We will offer a temporary contract of one year. After that, we plan to switch to a permanent contract if both parties are satisfied. We used the same approach for every person we hired so far and everyone has been confirmed.

We also offer a budget for training of 1K euros a year.

Of course, we will provide you with the hardware for doing your work. You will choose your hardware (currently most of the team is on Mac).

The selection process

What about the selection process?

  • You should visit this address and fill the questionnaire: https://strumenta.typeform.com/application . As part of the questionnaire you will be able to share your CV/resume and links to your projects (if available)
  • If we like your questionnaire you will be contacted for a first quick call. This call will be in English, with an English native speaker
  • We will ask you to work on a coding assignment. The submitted code will be used exclusively for the evaluation. To thank you for your time, we will provide a copy of our video course on parsing (currently sold at $679) and a physical book from Manning.
  • After reviewing the test project we will invite selected candidates for a 90-minute interview with our Language Architect, our Project Manager, and two of your future peers.

Our selection process is a bit different, but we think it helps both parties to know each other well enough to make such an important decision as deciding to work together. We think you will appreciate we took our time when we picked your colleagues.