Staff Software Engineer Job Description Template
Our company is looking for a Staff Software Engineer to join our team.
Responsibilities:
- Design, build and maintain backend and frontend applications;
- Foster your personal and professional development continually seeking assignments that challenge you;
- Strive for high quality outcomes, continuously look for ways to improve team productivity and product reliability, performance, and security;
- Work with frontend technologies such as React and JavaScript;
- Automate unit and integration tests within a CI/CD pipeline;
- Partner with other engineering teams to deliver best solutions;
- Ensures software standards are met;
- Ensure that the feature(s) work across multiple releases of the software;
- Work with the development and testing teams to ensure consistent, high quality deliveries;
- Take on additional responsibilities that might prove to be needed;
- Develop code based on the specifications;
- Prepare software verification plans and quality assurance procedures;
- Continually strive for increased efficiency, maintainability, and quality;
- Integrate software components into a fully functional software system;
- Build and Support – Embrace the DevOps mentality to build, deploy and support applications in cloud with minimal help from other teams.
Requirements:
- Bachelor Degree in the field of Electrical Engineering, Computer Science, or in a related field;
- Experience in Software Development in one or more programming languages: C/C++,
- Minimum of twelve (12) years of software development experience, with at least six (6) years of that being with complex systems;
- Embrace ML – Work with data scientists to operationalize machine learning models and build apps to make use of power of machine learning;
- Experience authoring tests in both Java and Javascript;
- Experience in operationalizing Machine Learning workflows to scale will be a huge plus as well;
- Passionate about building next-generation technologies, enjoys fast-paced environments, and loves to code;
- Familiarity and comfort with agile software development principles and practices;
- Experience in working with Data Scientists to operationalize machine learning models;
- Expert-level competency with C# and .NET;
- Ability to architect complex, high-scale web applications and data solutions;
- Comfortable with ambiguity; ability to thrive with minimal oversight;
- Experience with task automation (Grunt, Gulp, WebPack) and CSS Preprocessors (Less, Sass);
- Self-Starter – minimal supervision required;
- Understanding of Application Lifecycle Management, Software Development and Agile Development/Testing practices and methodologies.