Skip to main content

Soft Skills & Testing

Notes from a FrontendMasters course: Software Developer Success: Soft Skills & Testing

Ramping Up in a New Team​

  • Ask questions! Don't feel embarrassed, especially at the start.
  • Pair program with others or shadow another engineer that's been there for a while.
    • Good to observe and see how the team or company usually works.
    • Which parts are good and bad in the codebase.
    • Patterns to follow.
    • Testing state.
    • PR processes and feedback norms.
    • This doesn't mean to just follow it, but it's good to see how things are currently being done.

Time Estimation​

  • Tasks are generally flexible.
  • Common obstacles when executing tasks:
    • Under-communicating
    • Not understanding how long a task will take.
    • Not having enough information about the task.
  • Some things you can do to avoid going over deadlines are:
    • Seek help.
    • Notify when blocked as soon as possible.
  • Spike the Task:
    • Spike is an agile term.
    • Go into each requirement at once upfront.
    • This gives you the chance to see how much time and effort is going to be needed.
    • Helps give you an understanding of what's to come and if you need more help.
    • Testing and requirements are all being implemented in amongst each other.
  • Practice Breaking Down Tasks.
  • Understand the lifecycle of bringing a feature to life so that you know how long it will take.
  • Over Communicate:
    • What:
      • What is done.
      • What is in-progress.
      • What are blockers.
      • What is at risk of not being delivered.
    • Who:
      • Manager.
      • Teammates working on the task.
      • Stakeholders relying on the work.
  • Gather info:
    • What is the task
    • Validation steps
    • Who are the stakeholders
    • Who is relying on it
    • Why the task matters
    • When is it needed

Feedback Loops​

  • Weekly or bi-weekly feedback sessions.
  • You want timely feedback.
  • Ask specific questions:
    • What areas can I improve upon?
    • How did I go on that journey?
    • What goals or objectives should I focus on for the next couple of months?
    • How do you gain visibility into my work?

Asking for Help​

  • Trying not to trigger your imposter syndrome.
  • Timeboxing.
  • Treat each Q&A session as an opportunity to build trust:
    • Show your due diligence.
    • Collaborate on a final solution.
    • Clarify assumptions.
    • Express gratitude.

Surface your Accomplishments​

  • Managers are busy, sometimes work can go unnoticed and unnoticed work could be mistaken for inactivity.
  • Sometimes its important to visualise your achievements, impact and work.
  • Advocate for yourself.|
  • Rewards & Promotions are subjective and given out by people based on results and trust.
  • How to surface your accomplishments:
    • Create & Regularly update a brag doc.
    • Create regular communication loops with manager.
    • Understand the promotion and rewards process.

Opportunities​

  • It is important (for fast career growth) to foster your own opportunities.
  • How to get more opportunities to come your way:
    • Build relationships of trust with those around you.
    • Create your own, ask for more work.
  • Relationships drive opportunities.
  • Collaboration and respect are important, in order to get put on the big projects, you need to work well in a team.

Active Listening​

  • You must attune with the speakers feelings and thoughts.
  • Cognitive: Paying attention to all the information, both explicit and implicit, that you are receiving from the other person, comprehending, and integrating that info.
  • Emotional: Staying calm and compassionate during the conversation, including managing any emotional reactions (annoyance, boredom) you might experience.
  • Behavioural: Conveying interest and comprehension verbally and non-verbally.
  • Listen with intent, make the other person feel heard and understood.
    • If you hear something interesting, ask for more info about it.
    • If you hear something you don't understand, ask what it means.
  • Have a genuine desire to get to know someone.

Tactics​

Mirroring: Restate what they said in your own terms to see if you understood.

Example:

  • I'm worried about my presentation for the board meeting.
  • Oh what about the presentation is worrying you?
  • I'm worried about...

Label emotions: label the emotions that you notice to see if you understood how they felt, and help you empathise.

Example:

  • They just wouldn't listen, even though I brought it up so many times!
  • Did that feel really frustrating?
  • Exactly! It was frustrating because...