Senior Simulation Software Engineer
Senior Simulation Software Engineer responsible for developing and optimizing a network simulation service for AI system design. Enhance performance, scale, and quality; integrate with cloud; collaborate on CI/CD. Requires 5+ years in software development, C++/Python, and performance-critical systems.
Responsibilities
- Design and develop simulation capabilities, integrating internal and external libraries.
- Expand simulation versatility for advanced use cases, balancing scalability and fidelity.
- Improve software quality, ensuring robustness and reliability.
- Expose the simulation as a service for easier stakeholder access.
- Enhance runtime and memory consumption through optimization techniques.
- Integrate a new simulation management system for data accessibility.
- Collaborate with DevOps to develop CI/CD infrastructure for the service.
Requirements
- BSc or above in Computer Science, Computer Engineering, or related field.
- 5+ years of software development, including large-scale performance-critical systems.
- Proficiency in C++ and Python with optimization techniques.
- In-depth knowledge of computer science fundamentals and computer architecture.
- Strong system perspective and understanding of system impacts on users.
- Independent, motivated, with strong communication skills.
Nice to have
- Experience in a large, multidisciplinary simulation environment.
- Familiarity with discrete event simulators (e.g., OMNeT++, SystemC).
- Knowledge of multi-core computation and parallelization (e.g., MPI).
- Prior experience with cloud computing and parallelizing computational workloads.
- Experience developing CI/CD pipelines and integrating services.