Qualifications and Skills:
1. Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
2. Proven experience in scientific programming and software development.
3. Strong proficiency in multiple programming languages and technologies.
- Proficiency in Java, C++, and Python, with demonstrated experience of using these languages in production.
- Familiarity with one or more Domain-Specific Language technologies such as Xtext, Xtend, Lark, or Langium.
- Exposure to modeling formalisms state machines, Petri nets, logic based languages such as Z3, OCL and Prolog. - Working knowledge of web technologies such as HTML, JavaScript/Typescript, React, etc. is a plus.
4. Experience in creating prototypes and demonstrators from concept to implementation.
5. Solid understanding of software development life cycles and best practices.
6. Ability to understand and apply academic research results to practical industry solutions.
7. Familiarity with high-tech industry product development processes is a plus.
8. Excellent problem-solving and analytical skills.
9. Strong communication skills and ability to work effectively with diverse teams.
10. Self-motivated with the ability to work independently and manage multiple projects.
Required Attributes:
1. Adaptability to work with various technologies and programming environments.
2. Creativity in approaching complex problems and developing innovative solutions.
3. Strong attention to detail and commitment to delivering high-quality work.
4. Proactive mindset and willingness to take initiative on projects.
5. Ability to explain complex technical concepts to non-technical stakeholders.
6. Enthusiasm for bridging the gap between academic research and industry applications.