Skip to content

Latest commit

 

History

History
65 lines (42 loc) · 3.35 KB

Junior_Developer_2.md

File metadata and controls

65 lines (42 loc) · 3.35 KB

Junior Developer II

💻 Tech

Expertise in our "core" languages and frameworks

  • You know the basic syntax of one of our core programming languages - Ruby, JavaScript, Dart, and have already explored some of the more complicated language constructs.
  • You have a basic understanding of the most frequently used parts of the frameworks/libraries that you work with – Ruby on Rails, React, or Flutter.

Expertise in infrastructure and tooling

  • You have a basic understanding of the core technologies (like the HTTP protocol, relational databases, …)
  • You are eager to learn about our infrastructure setup and start taking responsibilities in the support channel.

Ability to explore and master a new technical topic

  • You are able to research a pre-determined new library of minimal size / complexity and integrate it into our application.
  • You are able to approach an unfamiliar library in the codebase that falls outside a core framework, and figure out basic tasks with some help from another team member.

Write readable and maintainable code / solutions

  • The pull requests that you submit typically require a few rounds of feedback before they are merged.
  • You have started to think of the edge cases and include tests for them when they occur to you

Managing technical debt

  • You are able to take on simple refactoring tickets defined by someone else with help from another team member.

Source control

  • You are comfortable with basic git commands like add, commit, push, pull, branch.

🎯 Self management / Focus

Look for and act upon feedback

  • You welcome feedback on your PRs and improve based on it.

Handling "being stuck" / time management / following through

  • You work on small tasks from the scope of your current squad and complete them mostly without help from others
  • You are able to complete medium sized tasks with the help of other team members and you contribute positively to the output of your squad
  • It is totally fine that you get stuck on the tasks assigned to you. You are learning how to communicate that to the other team members and find help.

Self reflection and continuous self improvement. Awareness of own strengths and weaknesses.

  • You are curious and you want to learn new skills. You proactively search for these opportunities
  • You're interested in learning about other technologies beyond the one you've been focusing on

💬 Communication & Collaboration

Interact well with team members

  • You are friendly and pleasant to work with.

Help improve our team process

  • When asked for it, you participate in our existing team processes by note-taking, and documenting changes in Don't panic.

Interact well with business stakeholders / customers

  • You learn how to interact with colleagues from other departments by joining the support team as an observer.

Code Reviews

  • You regularly look at the open pull requests. You point out things that you don't understand and ask questions about the implementation. You start giving feedback on things that you already learned.

Remote work

  • You are comfortable pairing with colleagues that work remotely.

⏳ Project management

Structure a large project into manageable parts / deliverables

  • You actively participate in planning meetings of your squad and help with splitting up large tickets into smaller tasks together with squad members.