| |
---|
Technical: Understand the system, in detail and as a whole, to constribute to its improvement. | Contribute to defining project objectives, scope, and plans Justify and challenge design decisions, tradeoffs, and limitations Understand the expected behaviour of the project and components Understand how the project integrates with other projects Triage issues and rapidly narrow down potential sources of error Ensure maintainable and testable components Maintain and update integration testing methods (e.g. SITL, HITL) Maintain and update tooling
|
Vision: Direction, growth, and development of the team. | |
Initiative: Proactive action. | Identify and mitigate technical risks Create tasks with minimal interdependencies (i.e. decoupled) Take ownership of technical challenges Research and experiment with new tools and technologies Revisit design decisions
|
Prioritization: Allocation of resources, due dates, and setting goals. | Estimate time and resource usage for tasks Reevaluate and take corrective action for tasks that exceed time and resource estimates Make decisions prudently with consideration to the impact of other projects and subteams
|
Collaboration: Communication, coordination, and leadership. | Lead by example and act as a role model Involve members in decision making process Provide constructive feedback and mentoring Foster an positive and productive work environment Resolve engineering disagreements: Resolving Engineering Disagreements Maintain clear lines of communication and an active presence Coordinate with other projects
|
Administration: Organization of procedures | Express ideas clearly and concisely in writing Record design decisions and justification Maintain technical documentation Attend meetings, scheduling any additional if necessary
|