Job Opportunities

At SelfDrvn, we believe in measuring performance by the outcomes delivered rather than the number of hours worked. We value self-accountable, self-starters who are self-driven for their own success.

For an example of people who thrive within SelfDrvn, watch the video above!

Software Engineer (React Js)

Role and Responsibilities

  • Developing new user-facing features using ReactJS.
  • Building reusable components and front-end libraries for future use.
  • Translating designs and wireframes into high-quality code.
  • Optimizing components for maximum performance across a vast array of web-capable devices and browsers.

Preferred Skills

  • Strong proficiency in JavaScript, including DOM manipulation and the JavaScript object model.
  • Experience of developing the front end of applications with React JS, React Hooks, and Redux.
  • Excellent understanding of testing and troubleshooting of the problems in the development phase.
  • Thorough understanding of React.js, its core principles, and knowledge for benchmarking and optimization.
  • Experience with popular React.js workflows (such as Flux or Redux), data structure libraries (e.g., Immutable.js) & standard front-end development tools such as Babel, Webpack, NPM, etc.
  • Familiarity with newer specifications of EcmaScript, RESTful APIs, code versioning tools, and modern front-end build pipelines and tools.
  • Knowledge of modern authorization mechanisms (such as JSON Web Token) and isomorphic React is a plus.
  • Ability to understand business requirements and translate them into technical requirements.

Qualifications and Education Requirements

  • Bachelor’s degree in Computer Science, Information Technology, or a similar field.
  • Previous experience working as a ReactJS Developer.
  • 3+ years of demonstrable experience.
Software Engineer (Android/iOS)

Role and Responsibilities

  • Work with company leadership & production to build the technical roadmap for mobile titles
  • Ensure engineering and technical best practices, coding standards, and consistency within all projects
  • Foster an environment that identifies, encourages and rewards technical excellence and collaboration at all levels
  • Identify & break down risks and blockers
  • Create TDDs for new projects or features
  • Write clear and maintainable code
  • Push for standardization and code reusability
  • Contribute to the hiring process of engineers
  • Support, mentor, and provide growth to the team members
  • Technical Consultant to App Developers
  • Assist in implementing maintenance program for all in-scope mobile apps, including on-going support.
  • Write quality code that adheres to the best practices of software development
  • Offer constructive and respectful feedback via code reviews
  • Write automated unit and integration tests as well as build tools to assist in testing various aspects of our app
  • Collaborate with product managers and designers to prioritize, estimate and execute realistic timelines for all deliverables
  • Participate in all Scrum ceremonies, from planning to the retrospective, giving meaningful feedback to help improve our teams, products, and culture
  • Work with QA engineers to ensure quality in our builds and releases
  • Work with the DevOps team to ensure our CI/CD pipeline fits our growing needs

Preferred Skills

  • Extensive knowledge of programming languages - Swift & Kotlin.
  • Familiarity with OOP design principles.
  • Experience with third-party libraries and APIs.
  • Superior analytical skills with a good problem-solving attitude.
  • Ability to perform in a team environment & to interpret and follow technical plans.
  • Strong oral and written communication skills.
  • Competent with version control systems such as GIT & Perforce including resolving complex merges

Qualifications and Education Requirements

  • Bachelor’s degree in Computer Science, Information Technology, or a similar field.
  • 3+ years of demonstrable experience.
  • Demonstrable portfolio of released applications on the App Store and Google Play
QA Lead

Role and Responsibilities

  • Accountable to provide clear, accurate and timely progress and status on projects, software quality and risks.
  • Tracking and supervision of day-to-day development QA tasks.
  • Identify problem solving – capture, analyze and propose resolutions to problems (RootCause Analysis, corrective and preventative action).
  • Provide guidance, mentoring and QA subject matter expertise to the team members.
  • Accountability for management and tracking of project level testing risks ensuring timelycommunication of impacts to Project Managers.
  • Lead all test design and execution, both manual and automated on multiple assignedprojects.
  • Drive review and approve test artifacts produced by the team.
  • Manage the team closely to maximize quality and effectiveness.
  • Evaluate and implement efficiencies, synergies and promote collaboration.
  • Define performance test plans.

Preferred Skills

  • A Diploma or Degree in Computer Science, Information Technology, or equivalent.
  • Minimum 5 years of working experience in a development or QA role.
  • Strong interpersonal skills include the ability to build authentic relationships, constructive challenge conventional thinking, cooperate as a team leader or team member, share information, and deliver results with a team.
Technical Lead - API

Role and Responsibilities

  • Identifying technical requirements and developing solutions with the team.
  • Identifying risks and their mitigations.
  • Solid experience working with .Net | C#
  • Azure cloud experience would be well received
  • Previously worked with TeamCity, Azure DevOps or Octopus Deploy
  • Design patterns and solid principles of Object Oriented Design
  • Ability to work within an agile environment
  • Creating reports, updates, user-docs and other sorts of documentation to explain whatwe do and how we do it.
  • Providing leadership, vision and direction to the team while ensuring business objectivesand client expectations are met
  • Providing direction on technical, architectural and design efforts
  • Delivering high quality software products
  • Managing delivery of multiple and concurrent product releases
  • Mentoring, coaching and managing your team of direct reports.

Preferred Skills

  • Microsoft Azure cloud, portal development and deployment skills.
  • Familiarity with using MS Visual Studio and Git version control software will be a plus.
  • Microsoft C# language stack with extensive .NET framework and/or .NET core.
  • Knowledge of Azure stack and DevOps.
  • Must have exp in C#, Web API, LINQ, .Net core, .Net Framework, GIT, SQL server, Azurefunction, Service bus, Logic App, Event Grid etc.
  •  Strong understanding of OOPS, Design Pattern, MS SQL and Query Scripting.

Qualifications and Education Requirements

  • Bachelor’s degree in Computer Science, Information Technology, or a similar field.
  • 3+ years of demonstrable experience.
Business Analyst

Role and Responsibilities

  • Technical feasibility studies, user requirement analysis and recommendation of solutions.
  • Work as product owner to understand the market/business requirements and translateto solutions.
  • Managing product backlog and translating it into actions.
  • Preparation of Functional and Technical Specifications, process flows and use-casediagrams.
  • Helping QA team to prepare Test Plan and Test Cases.
  • User support assist in troubleshoot and rectifying issues logged.
  • Establish a professional working relationship with external and internal users.

Preferred Skills

  • Candidates must possess at least a Diploma, Advanced Diploma, Bachelor's Degree, or higher in Computer Science/Information Technology or equivalent.
  • Minimum 7 years of working experience in Software analysis, design, development & implementation.
  • In depth understanding of Software Development Life Cycle.
  • Strong analytical and written skills with the ability to translate business requirementsfrom end users to technical requirements.
  • Able to create and document screen designs, process flow charts, use-case diagrams, testcases, etc. outlining system functionalities and processes.
  • Able to work as a team member with other technical staff, such as developers andinfrastructures team members.
  • Strong team player as well as an independent learner.
  • Able to work under pressure to meet timeline.