# Evaluation Criteria ## 1. Software Engineer (Junior) There are few criterias that a junior SE need to fulfill in order to pass the Probation Evaluation: SE (Junior) will be evaluated on his/her ability to blend in with the development team's culture as well as the ability to complete small tasks independently ### a. TECHNICAL - INDIVIDUAL * The ability to understand and build on the team's existing project and technology: * MASTER * AGENT * LIB * The ability to complete small tasks independently * The ability to solve problems independently * When faced with blockage, takes the initiative to seek for help * The ability to be responsible through the whole development cycle: * Development * Deployment * Maintenance ### b. SYNERGY - TEAM * The ability to communicate with colleague from other department (PM/Design/Infra) * Able to communicate in text message/dialogue with the respective colleagues * Able to deliver messages correctly to the recipient * The ability to communicate with colleague from the same department * Able to communicate in text message/dialogue with the respective colleagues * Able to deliver messages correctly to the recipient * To be able to let everyone aware of what you are currently engaged on * Sync work status at work group * Discuss problems in work group' * Manage own task's progress, actively reporting task status and takes the initiative to request for new task when it is done * The ability to become a RELEASE OWNER for weekly update * Able to make sure DEV DEPLOY is correct independently * Able to make sure BUILD PROD is correct independently * Able to make sure HOTFIX is correct independently ## 2. Software Engineer (Senior) All of the Software Engineer (Junior) evaluation, including: SE (Senior) will be evaluated on his/her ability to complete large tasks, and also the ability to improve the ability of other SE(Junior)/the company ### a. TECHNICAL - INDIVIDUAL * The ability to incorporate new technologies into existing product * Possess the ability to evaluate and import new technologies into current project * The ability to deal with performance issues * Possess the ability to analyze performance bottlenecks and make amendments * The ability to handle large task (Higher complexity tasks) * Split tasks to other colleagues accordingly * Break down to smaller tasks that is able to be released independently * The ability to handle issues that is not well known to him/her * Issues that arise from other colleague's task * Issues that is uncertain (do not know how it happen) * Keeping himself/herself on track while performing task * Whether the original estimation is achieved * Whether time is spent on unnecessary things * During task planning, able to identify which tasks are necessary/which tasks can be handled parrallelly * The ability to perform Code Review * The ability to plan and lead other colleague to execute tasks/projects even if the task will not be done by him/her * If new technology is introduced, able to introduce step by step to the whole team: * Evaluate it it suitable * Evaluate how to implement * Evaluate when to implement * Evaluate how it affects the efficiency of the team ### b. SYNERGY - TEAM * Able to make use of his/her technical knowledge to make others better * Able to assist SE (Junior) in performing their task * Able to explain the "why" not just the "how" * Sharing technology as he/she sees fit * If there are uncertainty/doubts in the TASK requirements, able to propose an improvement plan * Able to make RD team better * Used to keep track on things that you have developed to monitor its operation status (To have love for the things you developed) * Care about whether the things developed can perform as expected * Extending beyond your job scope to help various teams in the company * eg: Explaining to CS how to troubleshoot problems * Chasing things appropriately * In the event a task is delayed/suspended because of something, able to push things to happen from time to time - add example * The ability to observe things * Able to observe if the teams across the company are on the right path * The ability to think from the perspective of the other party when discussing solutions with other departments in the company