The Cytoscape Cyberinfrastructure (CI) Developer is an exciting, senior position in computational and systems biology where you will build software tools and infrastructure to help scientists use networks in biological research. Our publicly distributed, open-source software is used by researchers around the world in both academia and industry, both in basic research and in the translation of research to the clinic. In our own lab, we closely collaborate with world class researchers, supporting their work and helping them bring their software to a wider audience.
We work with a broad range of software in multiple projects, so we are looking for an experienced and versatile software engineer who can bring many skills to our team and then learn more. We support the widely used Cytoscape desktop application (cytoscape.org), the NDEx (Network Data Exchange) site, and a new generation of web applications and containerized services. We work in Java, JavaScript, Angular, React, Python, R, Docker, Apache, PostgreSQL, and whatever else gets the job done. The CI developer must be able to contribute to (and sometimes drive) projects from requirements gathering, to design, to implementation, and to testing and release.
This is a chance to work in an academic setting where your work will be freely distributed to a broad community of users while working closely with the members of our lab and with our collaborators. The CI developer is first and foremost a highly capable software professional, but experience in a research setting, biology, statistics or machine learning would be a plus.
MINIMUM QUALIFICATIONS
-
Bachelor's Degree in computer science or related area; and/or equivalent experience/training.
-
A minimum of five (5) or more years of work or research experience in software development.
-
Experience in research/academic settings.
-
Proficiency in software engineering, data structures, databases with a solid grounding in fundamental programming skills.
-
Proficiency in programming across multiple languages and frameworks (i.e. Python, R, Java, JavaScript, Web application development, especially using modern frameworks such as REACT, Angular, CSS, Materials, REST services, SQL and relational databases, and UNIX command line).
-
Expertise in version control systems (such as GitHub), requirements gathering, design, testing, and deployment.
-
Strong communication skills to work with both technical and non-technical personnel in multiple fields of expertise and at various levels in the organization, including interaction with scientist users and collaborators.
-
Ability to communicate technical information in a clear and concise manner, such as when giving presentations outside of the software team. Ability to lead projects.
-
Knowledge of biology, bioinformatics, biological networks, machine learning, and statistics are desirable.
PREFERRED QUALIFICATIONS
-
Graduate degree in computer science or related area.
-
Advanced unix experience: Variations of UNIX (e.g., SunOS, Open Solaris, Ubuntu, Red Hat Linux); Shell script programming; Access control management, applications configuration management; Virtual image creation and deployment.
-
Experience working in a product-oriented development environment, managing a public website with many user accounts, participating in formal website, web application and desktop application release processes
-
Experience with web application technologies and services such as AWS, Kubernetes, Apache, proxies, REST API design and deployment of a REST endpoint, Infrastructure necessary to develop client-server applications and model-view controller applications; Source control management, familiarity with Git and GitHub.
-
Experience with one or more of Python,Jupyter notebooks, R, Shiny, R markdown, cytoscape.js, D3, deck.gl, Angular, React, Materials, Bootstrap, Docker, Singularity
-
Thorough knowledge of modern biology and applicable field of research. As employed in interactions with researchers using the developed software.
-
Thorough knowledge of bioinformatics programming design, modification and implementation. As employed in developing software interfaces, data upload and download, interacting with researchers.
-
Strong project management skills.
-
Significant experience in Java user interface development, Java Swing, and Java-based web services
-
Demonstrated ability to work in a rapidly changing, multi-technology environment in which new skills must be acquired on a regular basis.
by via developer jobs - Stack Overflow
No comments:
Post a Comment