Full-Stack Developer & Scientific Software Engineer @ Biocomputing Unit

We have a Full-Stack Developer & Scientific Software Engineer position open at the Biocomputing Unit. Get to know it in this post!

About Scipion: Scipion is an open-source, workflow-oriented software framework used primarily in Cryo-Electron Microscopy (cryoEM). It integrates various scientific software packages into a unified interface, allowing researchers to execute, track, and share complex image-processing pipelines. Its goal is to ensure reproducibility and provide a seamless experience for processing high-resolution biological data.

About ScipionWeb: ScipionWeb is the modern web-based evolution of this framework. It provides a platform to manage scientific projects and workflows: from project creation and protocol execution to high-level visualization and productivity tools.

Stack: React + TypeScript (Frontend) and FastAPI + Python (Backend).

Your Tasks & Evolution: In this role, your responsibilities will evolve as you gain mastery over the framework:

Short to Medium Term:

  • 50% Web Development: Full-stack development of the ScipionWeb interface (UI + API + Integration).
  • 50% Scipion Core & Domains: Diving into the backend logic, the Scipion core architecture, and specific scientific domains like SPA (Single Particle Analysis) and Tomography.

Medium to Long Term:

  • Focus on the Scipion Core and expansion into new scientific domains.
  • Maintain and update the ScipionWeb ecosystem to ensure long-term stability.

    Requirements

    Academic & Language

    • Degree: BSc/MSc in Physics, Mathematics, or Software Engineering.
    • English: B2 level or equivalent (ability to work in an international environment).

    Technical Essentials

    • Python: 2+ years of experience with Core Python (Standard Library).
    • Linux: Solid basic knowledge (Ubuntu is our preferred distribution).
    • Version Control: GitHub (PRs, collaborative workflows).
    • DevOps/Distribution: Experience with software distribution (PyPI, Conda) and CI/CD (GitHub Actions).

    Stack & Desired Skills

    The Tools We Use:

    • Frontend: React Router, React Query, MUI, ReactFlow (for diagrams).
    • Backend: FastAPI, Pydantic, service-oriented layers.
    • Integration: Async workflows (jobs/queues), schema-based forms, and data visualization.

    Bonus Points (Desired Skills):

    • Knowledge of Image Processing or cryoEM.
    • Experience with 3D visualization (three/react-three-fiber or vtk.js).
    • Experience with Docker and Celery.
    • A strong eye for API design and complex UI (editors, dashboards, large-scale data).

    What We Value

    We are looking for someone with a scientific mindset—someone who is not only a great coder but is also curious about how pipelines and HPC (High-Performance Computing) environments work. You should enjoy solving complex logic puzzles and building tools that help scientists discover the building blocks of life.

    Applying

    Are you interested in our Systems Manager job position? Send your CV and a letter of interest to blanca@cnb.csic.es.