Senior Bioinformatics Software Engineer Location: Remote (CST Hours) -TX Duration: Full-Time About BigRio: BigRio is a remote-based, technology consulting firm with headquarters in Boston, MA. We deliver software solutions ranging from custom development and software implementation to data analytics and machine learning/AI integrations. As a one-stop shop, we attract clients from a variety of industries due to our proven ability to deliver cutting-edge, cost-effective software solutions.
Position Summary: The Senior Bioinformatics (BI) Software Engineer plays a critical technical role in the design, development, and maintenance of scalable and efficient software solutions for bioinformatics pipelines. This position requires close collaboration with cross-functional teams to deliver data-driven software solutions that align with business objectives.
Key Responsibilities: - BI Development: Build and maintain reliable software solutions using diverse technologies and databases to meet business requirements.
- Data Modeling: Develop and refine data models to ensure computational algorithm performance and integrity, particularly in areas like genome assembly, mapping, variant calling, and annotation.
- ETL Processes: Design and enhance ETL processes to extract, transform, and load data efficiently, often through API-based integrations.
- Query Optimization: Optimize SQL queries and database performance. Participate in schema design and review processes to maintain high performance and scalability.
- Dashboard & Report Creation: Create interactive dashboards and automated reports using tools like Azure Pipelines, Power Automate, and Nextflow to support data-driven decision-making.
- Collaboration: Work closely with stakeholders, such as analysts, clinicians, lab staff, and developers, to understand needs and deliver timely software solutions.
- Data Integration: Integrate diverse data sources, ensuring accuracy and reliability while minimizing code debt and maintaining system flexibility.
- Quality Assurance: Perform rigorous testing and automate test suites (e.g., with pytest, doctest, Azure Pipelines) to ensure software quality and stability.
- Documentation & Maintenance: Produce clear, comprehensive documentation including inline code comments, wikis, READMEs, and trace mappings to ensure ease of use and maintainability.
Qualifications: - Education: Bachelor's degree in Computer Science, Software Engineering, Bioinformatics, or related field (Master's preferred).
- Experience: Minimum of 5 years in software development, with experience designing and implementing scalable, production-ready software solutions. Experience working with lab scientists, computational biologists, or clinical professionals is a plus.
Technical Skills: - Proficient in at least two programming languages (Python, Perl, R, or Bash preferred; Java, C , Groovy also acceptable).
- Strong background in database systems such as SQL Server, NoSQL, MongoDB, MySQL, or ElasticSearch.
- Agile development experience with Git and CI/CD implementation. Knowledge of Azure is a plus.
- Comfortable with object-oriented programming and software architecture design best practices.
- Skilled in writing well-tested, maintainable, production-ready code with a strong focus on unit and integration testing.
- Exceptional at writing documentation and translating scientific concepts into accessible code annotations or supporting documentation.
- Experience designing and building APIs and microservices from scratch.
- Familiarity with Linux and HPC environments (e.g., SLURM, Kubernetes, GCP, Azure) is beneficial.
- Knowledge of package managers (PIP, Conda) and containerization tools (Docker, Singularity).
- Exposure to workflow management/orchestration tools (e.g., Nextflow, Airflow, Snakemake) is a plus.
- Excellent analytical thinking with the ability to translate complex problems into clear technical solutions and communicate them effectively.
- Strong team player with excellent communication skills, open to feedback, and focused on collaborative problem-solving.
- Flexible and adaptable, with a proactive approach to learning new technologies and implementing best practices in software development.
- Capable of independently managing project timelines and communicating effectively through changing project scopes.