JOB FAMILY SUMMARY:
Software Engineers work in the Mindbody software development life cycle, including specification, design and implementation and testing of new features and bug fixing. Software Engineers are responsible for their own code and bugs.
Software Engineer III designs, develops, monitors, troubleshoots and debugs software applications for our core services. This includes developing software components including frameworks, APIs, websites, utilities, databases and internet-related tools.
MINIMUM QUALIFICATIONS AND REQUIREMENTS:
- Bachelor’s Degree in Computer Science or equivalent.
- 3+ years of industry experience in programming web applications and/or large-scale SaaS products.
- Experience building backend services with an object-oriented language such as C# or Java.
- Experience with monitoring systems such as New Relic or Kibana.
- Familiarity with SDLC and programming design patterns, and Agile methodology.
- Skilled at reviewing new feature impact on an application and recognizing potential risks.
- Detail-oriented, professional and possesses a positive work attitude.
- Ability to communicate professionally both verbally and in writing.
- Experience with authentication and authorization frameworks like IdentityServer.
- Hands-on experience with NoSQL and non-relational databases.
- Knowledge of the Microsoft Development Stack: C#, .NET Core, LINQ.
- Experience with cloud platforms such as AWS.
- Experience with containerized applications.
- Experience with microservices.
- Experience with React, Angular, or other JS frameworks.
PRINCIPAL DUTIES AND RESPONSIBILITIES:
- Serves as a self-directed, key contributor to code development on features and bugs to produce successful team sprints.
- Makes implementation design decisions around new feature components.
- Produces contingency plans for critical projects.
- Analyzes technical requirements with the team to gauge level of effort.
- Carefully analyzes design specifications before coding to understand effort levels required.
- Creates technical documentation for new features that can be easily understood by peers.
- Writes and executes tests, including creating comprehensive unit and integration tests.
- Participates in an on-call rotation duty to respond to after-hours system incidents.
- Performs peer code reviews to ensure quality of the codebase.
- Keeps abreast of new technologies.
- Ensures designs and projects created comply with design library guidelines, internal best practices, and coding conventions when applicable.
- All other duties as assigned.
- This role regularly utilizes a computer, including the use of a monitor, mouse and keyboard.
- The noise level in the work environment is usually moderately quiet.