Software Developer - 85194 Organization: EB-Environ Genomics & Systems Bio
Berkeley Lab’s Environmental Genomics & Systems Biology Division (http://biosciences.lbl.gov/divisions/egsb/) has an immediate opportunity for a Software Developer to join the Department of Energy Systems Biology Knowledgebase (KBase, https://kbase.us/) team.
Designed to meet the key challenges of systems biology (predicting and ultimately designing biological function), KBase integrates numerous biological datasets and analysis tools into a unified, extensible system that allows researchers to collaboratively generate and test hypotheses about biological functions. The project’s long-term goal is to help researchers to understand how plants and microbes interact with and affect each other and environmental processes and how these interactions could be harnessed for sustainable bioenergy and environmental solutions.
We are seeking a talented and passionate Software Developer to design, develop, and install software solutions for computational biology applications. The successful candidate will be able to build high-quality, innovative and fully performing software in compliance with coding standards and technical design. In addition, the successful applicant will have opportunities to work on a wide range of software development tasks, including user interface design, data integration, database and software interface design, and high-performance computing and bioinformatic algorithm development. The candidates should also be comfortable working in a collaborative, team oriented environment, especially using Agile approaches such as Scrum, Kanban or rapid application development. Candidates need to be self-starters who can operate independently, learn new material rapidly and be willing and/or able to develop as full stack and polyglot developers. This position will be filled at the Level 2 - Software Developer or Level 3 - Staff Software Developer, dependent upon experience.
Software Developer (Level 2) Specific Responsibilities: • Work on issues of diverse scope; may include working with other KBase members to implement software to meet stakeholder needs; working with users of the analysis software to ensure that their needs are being met as well as to test and debug applications. • Prepare presentations and papers for internal use, conferences, and peer-reviewed publication. • Maintain accurate documentation and source-code control for all work-product. • Execute full lifecycle software development. • Write well-designed, testable, efficient code. • Produce specifications and determine operational feasibility. • Integrate software components into a fully functional software system. • Develop software verification plans and quality assurance procedures. • Document and maintain software functionality. • Tailor and deploy software tools, processes and metrics. • Comply with project plans and industry standards.
In addition to the above, the Staff Software Developer (Level 3) responsibilities include: • Take on the Team Lead role; exercises judgment in selecting methods, techniques, and evaluation criteria for obtaining results while coordinating with the PI and other members of group in designing, developing, and distributing software for genomic analysis, systems biology analysis including metabolism, analysis of microbial community structure and function, and sophisticated data analysis. • Work on complex issues where analysis of situations or data requires in-depth evaluations of variable factors; will involve but not limited to defining software requirements and determining and coordinating the week-to-week direction of the work. • Identify problems and recommend viable solutions to software and data management issues. • Experience working on front end as well as back end software
Software Developer (Level 2) Required Qualifications: • A minimum of 5 years of related experience with a Bachelor’s Degree in Computer Science or Engineering; or 3 years related experience and a Master’s Degree; or equivalent work experience. • Experience with modern practices of open collaborative software development, including code review, the GitHub pull request model, etc. • Experience in designing interactive applications. • Demonstrated high analytical skills and programming skills (highest preference for Java or Python but open to C/C++). • Familiarity with software engineering practices that include testing, documentation, source code management and release procedures. • Demonstrated ability to work collaboratively with programmers, engineers, postdocs, graduate students, and undergraduates from diverse backgrounds. • Excellent writing, interpersonal communication, and analytical skills.
In addition to the above, the Software Developer (Level 3) qualifications include: • A minimum of 8 years of related experience with a Bachelor’s degree in computer science or engineering; or 6 years of experience with a Master’s degree; or equivalent experience. • Prior substantial experience developing software in a research or technical field for scientific applications. • Experience with cluster computing environments such as Amazon EC2 or Batch Execution environments such as found in high performance computing clusters. • Experience with NoSQL databases such as MongoDB, Lucene, SOLR or ElasticSearch. • Front end design and/or development using JQuery, Single Page WebApp frameworks like AngularJS, visualization libraries such as D3. • Extensive experience releasing stable, well-tested, robust software systems of substantial complexity. • Proven ability to conduct business systems analysis, computer systems design, and development of complex computer systems using state-of-the-art technology and tools. • Knowledge of tools and systems for building documentation as an integrated part of the software development cycle (Sphinx, JSDoc, Doxygen, etc). • Experience with agile methodologies for software development.
Additional Desired Qualifications for the Software Developer (Level 2 & 3): • Familiarity with Agile software practices (e.g., Scrum, Kanban). • Experience in bioinformatics software design and engineering, mathematical analysis and comparative and functional genomics. • Experience with developing applications to display/visualize scientific (preferably biological) data. • Experience with scientific analysis tools such as Matlab, R, or Mathematica. • Master’s degree or higher in bioinformatics, computational biology, microbiology and bio- or chemical engineering discipline or a software related degree program. • Experience with Jupyter Notebook, Docker.
Notes: • This is a full time, 1.5 year term appointment with the possibility of extension or conversion to Career appointment based upon satisfactory job performance, continuing availability of funds and ongoing operational needs. • Classification will depend upon the applicant's level of skills, knowledge, and abilities. (For dual postings - add this to the position summary at the end of the paragraph) This position will be filled at the Software Developer or Staff Software Developer level, dependent on experience. • Full-time, M-F, exempt (monthly paid) from overtime pay. • Salary is commensurate with experience. • This position may be subject to a background check. Any convictions will be evaluated to determine if they directly relate to the responsibilities and requirements of the position. Having a conviction history will not automatically disqualify an applicant from being considered for employment. • Work will be primarily performed at KBase, 5858 Horton St. Suite 525, Emeryville, CA.
How To Apply Apply directly online at http://22.214.171.124/counter.php?id=142363 and follow the on-line instructions to complete the application process.
Berkeley Lab (LBNL,http://www.lbl.gov/) addresses the world’s most urgent scientific challenges by advancing sustainable energy, protecting human health, creating new materials, and revealing the origin and fate of the universe. Founded in 1931, Berkeley Lab’s scientific expertise has been recognized with 13 Nobel prizes. The University of California manages Berkeley Lab for the U.S. Department of Energy’s Office of Science.
Equal Employment Opportunity: Berkeley Lab is an Equal Opportunity/Affirmative Action Employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, age, or protected veteran status. Berkeley Lab is in compliance with the Pay Transparency Nondiscrimination Provision under 41 CFR 60-1.4 (https://www.dol.gov/ofccp/PayTransparencyNondiscrimination.html). Click here (http://www.dol.gov/ofccp/regs/compliance/posters/pdf/eeopost.pdf) to view the poster: "Equal Employment Opportunity is the Law".