Description

Project Overview: The Portfolio Management (Starsight) Team is focused on building tools, processes, and insights to help all levels of Research organize, develop, and responsibly share ideas that advance our mission. The Starsight initiative aims to develop a more informed, connected, and focused research organization. Our approach includes: - Providing visibility into the research portfolio - Managing the publication approval process, tool, and analysis - Advocating for data best practices

Overall Responsibilities

 

  • Code writing, testing & review: Write product or system development code for tasks with minimal assistance, conduct testing on code, design code to allow for easy testing (e.g., dependency injection), write test case descriptions to ensure coverage of critical components, review code developed by other engineers and provide feedback to ensure best practices (e.g., style guidelines, checking code in, accuracy, testability, and efficiency).
  • Engineering excellence, documentation & debugging: Set up or improve test/monitoring/survey infrastructure or processes to ensure code health and consider system maintainability and scalability over time, contribute to existing documentation or educational content and adapt content based on product/program updates and user feedback, triage product or system issues and debug/track/resolve by analyzing the sources of issues and the impact on hardware, network, or service operations and quality. 

     

Top 3 Daily Responsibilities

 

  • Code writing, testing & review in Python and Java
  • Debugging and bug fixing
  • Implementing monitoring and alerting as needed 

     

Mandatory Skills/Qualifications

 

  • Experience in lieu of a degree is acceptable for this role.
  • 3-5 years of professional software engineering experience is required.
  • Code comprehension: Ability to extract relevant information from reading code in one or more core languages and frameworks, including the ability to leverage the code as a resource to create work output for users or stakeholders.
  • Code health and tools: Ability to redesign or refactor code to address technical debt, maintain readability, or develop tools as necessary to improve code health.
  • Data structures and algorithms: Ability to select or design an algorithm and appropriate data structures to solve a problem or improve a product, framework, or the scale/speed/efficiency/reliability of a system
  • Debugging and bug-fixing: Ability to debug, triage, and fix program code or technical issues (e.g., hardware, software, application, operational, process) by locating, mitigating the impact, and fixing errors. This includes the ability to conduct root-cause analysis, isolate the source of the problem, and resolve the bugs.
  • Programming for SWE Knowledge of programming languages: This includes programming practices, major features and capabilities, and system management tools. 
     

Education

Any Graduate