Lead team to have a clear sense/emphasis on solidifying what to build before building it.
Take high-level instruction from manager and translate (or lead team to translate) into concrete and actionable requirements. An example of manager instruction would be "make sure the entire code base is consistent in code format." Be able to translate into exactly what tools to use, how to automate code format at commit time and/or build time.
Design phase: Autonomously (or lead team to) come up with sound designs that:
Support the required business logic at hands
Smartly drive integration points (within the team or with other teams) to maximize productivity and reduce issues/overhead
Lock down security
Clearly either support or has necessary hooks to support scalability and reliability
At the same time have enough room to allow the application to reasonably grow without massive regression risks and/or overhead.
Implementation phase:
Cleverly implement (or lead the team to implement) approved designs using efficient solutions such as brilliant algorithms.
Be the primary person to drive code review process and the main code reviewer for the team and make final call, if necessary, on code reviews.
Identify and drive technical debts, if any, from conception to solution.
Drive hackathon and other innovative practices under the guidance from manager
Test phase
Drive and make calls on the test processes
Be primary reviewer of unit tests for the entire code base
Guide test automation engineers
Be advisor to manager regarding to test area
Others:
Act as technical lead to the team
Act as technical advisor to manager
EDUCATION & EXPERIENCE:
BS/MS degree in Computer Science or equivalent education/experience.
10+ YEARS PROGRAMMING EXPERIENCE AS A FULL-STACK ENGINEER IS REQUIRED.
AT LEAST 3 YEARS OF EXPERIENCE IN REACT JS IS REQUIRED.
Training and experience with Agile software development.
Analysis and design experience.
Experience and training in formal testing methods helpful.
SKILLS:
Understanding of utilizing Agile and Scrum software development methodologies
Expert knowledge of at least one of the following backend programming languages/frameworks is required: C#, Nodejs, Ruby on Rails.
Expert knowledge of frontend programming languages like Angular JS or React JS is required
Being able to take a functional spec and come up with ER diagram is a must
Communicate effectively verbally and in writing.
Demonstrated time management and completion of tasks to a definite deadline.