- Manages the client and is called upon to facilitate user requirements sessions, design technical specifications, and manage the development of documentation to meet client expectations.
- Supports the analysis of client processes and recommends new business models, workflows, or solutions to best meet client needs.
- Manage all technical aspects of the project and also contribute directly by writing code, managing builds and performing other hands-on tasks
- Manages team members to successfully deliver agreed-upon solutions of the highest quality, exceeding customer expectations.
- Expertly implement designs using modern programming practices, Participate in the architecture and design of systems.
- Perform code reviews and ensure exceptional code quality.
- Functionally decompose complex problems into simple, straightforward solutions, Serve as a technical lead on our most demanding, cross-functional projects.
- Fully and completely understand system interdependencies and limitations, Possess expert knowledge in performance, scalability, enterprise system architecture, and engineering best practices.
- Assist in the career development of others, actively mentoring individuals on advanced technical issues, and helping managers guide the career growth of their team members.
- Exert technical influence over multiple teams, increasing their productivity and effectiveness by sharing your deep knowledge and experience.
- Minimum of 5 years software development experience and 3-5yrs real management of the engineering team.
- Expertise in architecting and designing software solutions for various problem types.
- Working Knowledge of Microservices Architecture
- Proficiency using MongoDB.
- Experience working on teams with a heavy emphasis on DevOps, and CI/CD.
- Contribution to Open Source Projects.
- Working Knowledge of Data Science and Natural Processing Language (NLP)
- Experience with AWS or similar cloud platforms (e.g. Google Cloud, Azure, OpenStack), Strong written and verbal communication skills.
- Willing to learn and work on different mobile platforms/frameworks when needed.
- Networking and integrating third-party APIs. Working with a version control system (i.e., Git).
- Good understanding of Object-Oriented Programming concepts i.e Classes and objects, Inheritance, Encapsulation, and Polymorphism.
- Intermediate level understanding of fundamental database concepts — i.e database tables, querying databases, normalization, joins, database management systems.
- Knowledge of network security and deep knowledge of unit, integration, e2e, and UI testing, as well as testing frameworks/libraries — JUnit(For Java), Espresso, Appium, XCTest(iOS).
- Working knowledge of at least one CI/CD tool — i.e Jenkins, Travis CI, Circle CI.