You are expected to be a good teammate
Be on time
The default start time for Labs is 9:30 AM. Your project team may decide on another start time at the discretion of your manager. In any event, you are expected to arrive to work on time. Most team check-ins happen first thing in the morning and your presence is counted on in order to plan the resourcing for the day.
If you have a scheduled meeting, you should arrive on time. Your co-workers' time is as valuable as yours.
Use project management tools to track your progress
This allows others to see what you are working on and helps others manage their feature workflow.
You are expected to get your work done. This means that you must understand the requirements of the task and deliver a finished product. If you don't understand what has been assigned to you, it is your responsibility to ask.
Push your code everyday
- This does not mean you need to ship a feature everyday, but if you are writing code, it should be on GitHub before you go home for the day. A team's code base is built on the code that resides on the remote repo. If you have code on your machine that needs to be used by a teammate it needs to be on GitHub.
- Pushing your code demonstrates what you accomplished for the day. You are not judged by how many lines of code you ship, but having a daily record of code can be an indication of your productivity.
- If your hard drive crashes, having a backup will save you.
Follow Pull Request Etiquette
- Hold yourself to the highest standard. You can open a pull-request (PR) at any time, but it should be clear to your teammates if it is ready for review. Please add the HOLD label if it is not.
- Review other's PRs
- Leave constructive comments. You will appreciate the comments when on the receiving end.
- You will benefit:
- You will see what code is being introduced to the code base.
- You will improve your code reading skills.
- Leave a
👍when you approve of a merge into
Follow Communication Etiquette As a rule of thumb:
- If you need something from someone within an hour, IM them even if you are sitting next to them.
- If you need something from someone by the end of the day, email them.
- If their house is on fire, tap them on the shoulder. Always IM before tapping someone on the shoulder unless you see them walking around or they are clearly not in the middle of something.
- When you don't understand something ask someone who does.
Take product ownership
- The world has enough developers who don't communicate with their non-technical co-workers. Endeavor to understand the business objectives. Be patient. Remember what it was like to not know how to code.
Be easy to manage
Meet administrative deadlines
- Take responsibility of knowing when you have deadlines to submit forms, feedback, RSVPs, or anything else that requires a deadline.
- Err on submitting things early rather than late.
Communicate with your manager
It is your responsibility to tell your manager when:
- You will be taking a vacation (use Justworks to request vacation and give adequate notice).
- Are sick or are working from home (please notify via text or email the night before or as soon as you get up).
- Have some sort of emergency (notify via text or email).
Ask for what you need
It is easier to give you something that you need when you tell us. Be vocal about what you need to make you a better employee.
You are expected to strive to improve
Always ask questions when you need help, but strive to only ask a question only once.
- This is nearly impossible, but your goal would be to record or remember the answer when someone has taken the time to explain a solution to you.
- You want to avoid asking the same question over and over. This demonstrates that you did not internalize the problem and/or that you don't fully appreciate people's time.
- Unless you have an exceptional memory, this may require you to organize your learnings with some sort of structure like Evernote, a code blog, or simply a notebook.
Do your best
You are expected to do your best. Nothing less. Nothing more. (But certainly not anything less.)
Apply the feedback provided to you
Managers are tasked providing you with feedback to improve. You are expected to apply that feedback.
Maximize your productivity
- Learn what break schedule maximizes your productivity
- You are expected to stay up to date with the latest major developments in the Ruby, Rails, and Flatiron communities.
- Pseudocode (strong suggested)
- As a beginner, you are expected to pseudocode your implementation before diving directly into the code in order to separate your problem solving strategies from your focus on syntax.