Company
Flexcompute Inc. logo

Flexcompute Inc.

www.flexcompute.com
Location

Hybrid work from Katowice:

  • 🇵🇱 Poland
Apply

Software Engineer - Python

Description

Job Summary

Flexcompute is seeking a motivated Software Engineer (python) to support our Tidy3D Python API development efforts. In this role, you will be responsible for our documentation infrastructure, improve our python packaging and continuous-integration deployments, and support the development of our python API design for scalability, maintainability, and ease-of-use. The candidate will gain experience working with highly experienced professionals and be an integral part of the product development, release, maintenance, and support phases.

What You Will Do

  • Documentation Maintenance and Feature Improvements (~50%):

    • Maintain and enhance existing documentation features using Sphinx extensions and develop further our own custom extension.

    • Manage documentation GitHub submodules integrations, web domain deployments, URL compositions, SEO redirects, and webhook integrations as the project scales.

    • Compose documentation using reStructuredText and sphinx.

    • Use HTML/CSS/JS to improve web documentation aesthetics and functionality for our users.

  • Continuous Integration (CI) (~25%):

    • Improve our Python dependency management across multiple interrelated repositories as we scale towards more multi-physics and decoupled projects.

    • Develop and maintain CI/GitHub Actions scripts.

    • Automate bash scripts to streamline development workflows.

    • API Design and Modularization Support (~25%):* Assist in designing a clean pydantic API to support modularization efforts as we scale towards multi-physics multi-solver software. * Contribute to multi-project API interface testing schemes. * Collaborate with the team to ensure robust and extensible frontend and backend API design principles.

Requirements

Basics:

  • Education:

    • Bachelor’s or Master’s degree in Computer Science, or a very strong open-source contribution profile.

  • Technical Skills:

    • Experience with Sphinx documentation compilation and reStructuredText documentation structures is essential.

    • Proficient in GitHub sub-modules management and web domain deployment.

    • Strong understanding of Python dependency management and CI/CD pipelines.

    • Some understanding of HTML, CSS, and JavaScript.

    • Familiarity with version control systems such as Git and command-line interfaces.

  • Soft Skills:

    • A nice, open, collaborative, autonomous, and motivated attitude.

    • The ability to identify, break-down, and solve problems on your own. Also, to clearly communicate them to someone with a completely different background and expertise.

    • Motivated to work in an asynchronous environment, collaborate and communicate mostly through Slack and Github.

Preferred:

  • Previous experience in documentation website development and maintenance.

  • Familiarity with implementing CI/GitHub Actions scripts and automating workflows.

  • Experience with Pydantic API design and modular software architecture.

  • Knowledge of backend and frontend API design principles such as the REST framework and architectures like monoliths, microservices, etc.

  • Understanding of software compilation/build principles and web design best practices.

  • Ability to contribute to multi-project interface testing schemes.

  • Open-source contributions will be very positively considered.

Benefits

What we offer

  • Competitive salary and benefits package.

  • Opportunities for professional growth and development.

  • A collaborative and innovative work environment.

  • Flexible work arrangements.

Join Us

By joining Flexcompute, you’ll be at the heart of a movement set to redefine the engineering simulation industry. You will play a key role in shaping the future, where our innovations in simulation technology pave the way for groundbreaking advancements. We are committed to fostering an innovative and collaborative culture where boundaries of possibility are reimagined, driven by creativity, expertise, and a shared vision of transforming the technological landscape. We welcome a strong technical background individual with the ambition to grow into a management role, while continuing to engage directly with code and set the standard for technical excellence.