Responsibilities
• Participate in all team meetings, including standups, plannings, refinements, reviews, and retros
• Assist in leading pair or mob programming with the team
• Integrate features using best practices and appropriate abstractions to minimize coupling
• Stay current on framework best practices and incorporates them into their work
• Independently implement features within multiple tech stacks
• Break down a feature vertical stack down into tasks and estimate overall effort
• Complete feature implementations within expected timeframes
• Refactor feature vertical stacks within a project for improved readability and maintainability
• Analyze and resolves bugs within a project
• Use debugging tools to troubleshoot, diagnose, and locate code defects across their project
• Implement appropriate logging to feature areas within a project
• Implement CI/CD processes appropriate to a project's needs and organizational constraints
• Establish testing frameworks
• Write robust tests that ensure system stability and validate domain integrity, yet are resilient to change
• Be a subject matter expert for the team in at least one library, framework, or technology
• Understands their project's tech stack, mastering the libraries and frameworks used
• Mentors at least one software engineer
• Articulate the full lifecycle of their project in detail
• Impart knowledge and foster growth among their team
• Assist the discovery team to churn opportunities into planned implementations
• Promote the readability, scalability, and maintainability of a project, and holds the team accountable
• Promote appropriate project documentation, including readmes, procedures, and system descriptions.
Qualifications
To perform this job successfully, an individual must be able to perform each key responsibility satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
• Able to read, write, speak and understand the English language
• Eagerness to learn and grow in a dynamic software development environment
• Ability to make independent decisions when circumstances warrant such actions
• Ability to deal tactfully with various personalities
• Ability to work under pressure
• Ability to work harmoniously with professional and non-professional personnel
Education and/or Experience
• 5-7 years of experience in a full-time software engineering role.
• Bachelor's degree in Computer Science, Software Engineering, or a related field (orequivalent work experience).
• Proficiency in multiple relevant libraries, frameworks, or technologies; expert in at leastone.
• Proficiency in programming languages and technologies relevant to the tech stack used by the team.
• Strong problem-solving skills.
• Ability to work independently on bug fixes and feature implementations.
• Adept understanding of software development best practices.
• Excellent communication skills.
• Ability to collaborate effectively within a team.