About the Role
Staff Software Engineer – Simulation Tools
Remote United States
Departments Simulation /
Full Time /
Remote
At Wisk, we’re transforming the future of urban mobility through safe, all-electric, autonomous flight.We are a passionate team working together toward a sustainable future, solving high-impact problems that have never been solved before. By delivering everyday flight for everyone, we’re making it possible to spend less time getting there and more time being there.If you want to be part of shaping the future of mobility, then read on!
We are looking for a Staff Software Engineer to join our Simulation team. The goal of the Simulation Software Engineer is to design and implement web applications, web APIs, and the associated infrastructure such as databases and DevOps. You will also design and/or integrate real-time simulation infrastructure with high rate data handling. You provide technical expertise in the areas of simulation frameworks.
Why we need you:
The Simulation Software Engineer is responsible for analyzing the needs of our simulation customers and supporting the design and implementation process to deliver new and maintain current simulation tools. You design and support the integration of the company’s subsystems into simulation by building efficient and intuitive software frameworks to automate and orchestrate as many processes as possible. You are hands on and able to deliver software written in a variety of languages (C/C++, Python, Javascript/Typescript).
What you will do:
- Identify opportunities and develop tools and services to improve the end-to-end UX of simulation.
- Gather requirements from internal customers and develop roadmaps for delivery of simulation products.
- Architect and integrate simulation frameworks together both real-time and event based systems.
- Collaborate with several IPTs (Integrated Product Team) for simulation usability, data collection, and analysis.
- Support integration web APIs to control, deploy, configure, and visualize simulation data and assets.
- Support simulation development operations by maintaining and improving continuous integration, automated test and deployment systems in cloud-based development environments.
What you have done:
- Bachelors degree in an engineering discipline with 10+ years of relevant experience
- Minimum 5 years of experience working in a real-time simulation environment
- Proficiency in C/C++/Rust/Python and/or Typescript/Javascript/HTML/CSS
- Experience with web APIs or other forms of distributed networked comms
- Experience developing in Linux and container environments
- Experience working with HIL/SIL simulations and test environments
- Strong software architecture design and development skills
- Creative approach to problem solving
- Excellent organizational and time management skills
- Excellent written and verbal communication skills
- Experience with highly automated software development processes and modern tools (git, GitLab/GitHub, JIRA)
- Experience in handling high frequency time series data
Desired:
- Experience conforming with FMI
- Experience with IaC and automated pipelines
- Experience with Arinc protocols (A429, A485)
- Experience designing heterogenous data storage systems
- Experience in developing real-time simulation systems
- Passionate about aviation and the future of transportation
- Experience with cloud platforms (GCP, AWS) and containerization (Docker, k8s)
Who you are:
- You are a highly motivated, self starting individual with a broad set of skills and never afraid of facing complex technical challenges
- You have the ability to act as a lead/mentor when required helping colleagues learn new systems and technologies
- You have strong communication skills and can easily tailor your communications to suit the audience
- You are quick at building prototypes to test your ideas
- You can adapt quickly or propose changes needed to achieve early results in a timely fashion
- You embrace challenges and take commitments and deliver results within reasonable expectations
- You are a positive team player