Job Description
- Own the codebase and tech stack.
- Manage product technical roadmaps and dependencies to minimize technical debt in a fast-moving, iterative environment.
- Manage the design, development, testing, iteration, and release of new features to support our product growth.
- Champion knowledge sharing, cultivate learning and avoid knowledge silos.
- Demonstrate healthy modern engineering practices through writing clean, well-tested, and well-refactored code with the team, and shipping it into production.
- Identify and define all technical tasks and run sprint planning and retrospectives.
- Set technical best practices to establish a foundation for a process-oriented, high-performance technology organization.
- Technically manage and lead the development team.
- Knowledge of Agile software development processes.
- Able to manage the most known task management tools.
- Controlling all stages of the development life cycle, including initial analysis, implementation, integration, testing, debugging, data validation, and support.
- Drafting analytical reports on user requirements and new task requirements and their impact on the internal workflows.
- Staying up-to-date with the latest software development technologies and methodologies to develop internal work.
- Coaching, guiding, and providing regular feedback to the team to enable successful outcomes.
- Being active between the team, the management, and the business unit.
- Engineering practice experience such as code refactoring, design patterns, design-driven development, continuous integration, building highly scalable applications, application security, secure coding practices.
- Demonstrated track record of successfully understanding the business requirements and designing realistic and effective solutions.
- Working knowledge of continuous integration and delivery/deployment tools like GitHub actions, CircleCI, Jenkins, Bamboo, or TeamCity.
- Ability to work collaboratively in a team environment and effectively with people at all levels in an organization.
- Proven technical leadership experience and success in leading medium to large-sized teams to deliver high-quality software.
- Excellent communication skills including managing expectations, reporting project status, mentoring engineers, and explaining technical concepts to non-technical people.
- Have the mindset of a self-organizing team.
- Teamwork and problem-solving skills, with the ability to interact and communicate successfully with business partners and development teams.
- Inspires the trust and respect of the team members and stimulates production within the workplace through effective leadership skills.
- You can collaborate with other teams to come up with high-impact ways of quickly solving problems.
Job Requirements
- Ideally, you have 8+ years of full-stack development experience with technologies including but not limited to Node.js, vue.js, react.js, PHP Laravel, AWS, GCP, and Serverless computing.
- 4+ years of experience in node.js, vue.js, Laravel, and react.js.
- 3+ years of Experience in AWS or GCP services.
- 3+ years of hands-on leadership and want to grow in this direction but still love contributing code.
- Proficient in the languages, tools, and frameworks core to iOS and Android development, including XCode, Android Studio, Swift, Java, React Native, dart, flutter, etc.
- Experience building Restful APIs
- Experience in LAMP/MEAN/MERN stacks
- Ability to review code to ensure coding standards are followed
- Understanding of security practices
- Knowledge of current trends and best practices in front-end architecture, including performance, accessibility, and usability.
- Ability to apply common sense understanding to carry out detailed but uninvolved written or oral instructions.
- Experience with command-line applications and task runners
- Familiarity with testing frameworks such as RSpec, JUnit, or Selenium
- Experience in: UI design, database design, SQL databases, and microservices
- Proven experience working with complex systems and track record of decision making regarding critical design and architectural decisions.
- Proficient understanding of code versioning tools, such as Git
- Prior experience with agile methodologies is a must.