Description
We're looking for a Software Engineer to join our team in designing, developing, and testing complex software systems or applications for software enhancements and new products.
Responsibilities:
- Support product refinement process, including ticket creation and analysis for development work.
- Follow architectural decisions made by the team and understand their reasoning.
- Engage in brainstorming sessions to propose innovative ideas and solutions.
- Participate in proof-of-concept implementations and prototypes to gather feedback and inform decisions.
- Communicate effectively with technical and non-technical audiences in written and verbal formats.
- Independently analyze, troubleshoot, and break down complex tickets, identifying dependencies across teams and epics.
- Contribute to CI/CD processes, including automated testing and enhancing testing coverage.
- Understand adoption and release barriers to entry for the product and technology.
- Support the development of strategic launch and release plans with cross-functional teams.
- Promote cross-team collaboration focused on taking end-to-end solutions to market and supporting go-live activities.
- Analyze product adoption and identify ways to improve the customer journey.
- Address system hygiene and mitigate future hygiene issues through high-quality code.
- Adhere to coding standards and stay up-to-date with the latest technology trends and best practices.
- Encourage continuous learning and define a personalized learning path for career growth.
- Independently handle complex tickets and collaborate with the team to drive continuous improvement.
- Leverage AI tools and techniques to enhance software development activities.
- Apply AI insights to identify patterns, automate repetitive tasks, and improve development efficiency and product quality.
- Evaluate and integrate AI/ML capabilities to strengthen product functionality and user experience.
Qualifications Required:
- Bachelor's degree in Computer Science or a related field with 2+ years of experience.
- Knowledge of software design principles and development tools, technologies, and domains.
- Proficiency in at least one programming language.
- Experience with web application development.
- Strong understanding of software engineering best practices.
- Ability to collaborate with others in a professional and respectful manner.
- Proficient knowledge of code versioning tools, such as Git.
Desired:
- Experience with Ruby on Rails.
- Experience with client-side JavaScript frameworks like Vue, React, Knockout, etc.
- Agile software development experience.