What are the responsibilities and job description for the Software Engineer position at Course?
Job Description
The position reports to the Development Manager within the R&D/Product Development organization.
The ideal candidate is an experienced software engineer who has experience developing front-end and back-end solutions while delivering high quality software using CI/CD workflows in an Agile/Scrum environment.
This candidate will also possess superior communications skills and feel comfortable working on small multidisciplinary teams of engineers and scientists.
Key Responsibilities:
- Development of software for the front-end and back-end of our product.
- Work with product management to develop features and review with product stakeholders to ensure the voice of customer and user needs are met by the design.
- Develop and maintain software design requirements (SDRs)
- Work closely with the Software Architect to ensure the design is robust and performant.
- Work collaboratively and efficiently with internal and external engineering and scientific resources.
- Work in the Agile/Scrum team helping to refine the backlog, implement tickets, attend standups and deliver sprint ending demos of tested functionality.
Qualifications:
- BS degree in SW Development or SW engineering, or a degree in physics, electrical engineering or mathematics with extensive SW development experience
- 5 to 10 years' experience in software/systems development
- Proficiency in the following languages and technologies:
- C#
- Angular/Typescript
- .NET Core
- SQL
- CI/CD pipeline concepts and implementation
- Docker
- Unit test frameworks like nUnit, xUnit, etc.
- Networking
Working Conditions:
- Work is in an office setting and lab. On site 3 days per week