Todo

  • Use Manus to review what you can expect from a 2nd stage interview
    • Check the person that will be interviewing you and what she cares about
    • Try to find some information about what they use as a pair programming execise
    • Find information what they care about when building web applications and make a list of things to potentially brush up on
    • Find information about how to be successfull during the pair programming exercise interview and what commonly people look for
    • Any other things
  • Review ARIA attributes, keyboard navigation, and semantic HTML practices
  • Consider how to create reusable components with well-designed props and clear separation of concerns.
  • Understand React rendering optimization, memoization, and efficient state updates. (https://www.patterns.dev/#patterns)
  • Practice identifying bugs, suggesting improvements to component structure, code readability
  • Prepare some questions based on questions I already have or add some new ones that you might find useful
  • Check your credentials

Credentials

Username: oskar-dragon
Email: dragon.t.oskar@gmail.com
password: 1.sloppy.broadly.matrix.rut.Gitthub

Process

  • Initial Exploration
    • Familiarise yourself with code structure and ask questions
      • Ask if there’s an area to focus on?
      • Known issues that should be aware of?
    • Go to the files
      • App.tsx
      • routes
      • components
      • hooks
      • main.tsx
      • package.json and check dependencies
  • Code Analysis
    • Component
      • Props and state handling
      • Reusability and composition
      • Memoisation and Optimisation
    • API
      • Fetch/axios/rq used properly
      • API errors caught and displayed
      • Data cached/memoised
    • Routing and Navigation
      • Authentication
      • Routing handled properly
    • Styling
      • Consistency in styles
      • Responsiveness
    • Performance and Optimisation
      • Re-render triggers
      • Debouncing
      • Lazy Loading of heavy components
    • A11y
      • Semantic components
      • Aria attributes
      • Keyboard navigation
  • Categorise issues
    • Critical Bugs
    • Performance Boettlenecks
    • Code smell
    • Acessibility gaps
    • UX/UI improvements
  • Prioritisation
    • Critical first: Security and Performance
    • Usability 2nd: UX and a11y
    • Code quality: refactoring and maintainability

Questions To ask

  • “Could you share how you approach documentation at Monzo? I saw you’re a documentation evangelist who values Storybook.”
  • “What technical challenges is the web team currently facing?”
  • Can you describe a typical day or week for a developer in your team?
  • What are some of the challenges you expect the person in this position to face?
  • How would you describe the work environment here — is the work more collaborative or independent?
    • “What’s your approach to testing and quality assurance for web applications?”
  • I read Monzo’s blog about PRs and your approach. It is very thorouh and detailed and I quite like it. Most people think it’s over the top, so I would like to know what is the effect of following Monzo process, do you introduce less bugs, have higher quality code? Long story short, does it pay off long term or even short term or the team?
  • LAST QUESTION: Would you be able to tell me more about the next stage? Is this a system design from a product perspective (Backend) or Frontend?
  • “What’s been your most interesting technical challenge while working with React/NextJS at Monzo?”
  • “I saw Monzo migrated from Jekyll and Gatsby to NextJS. What were the biggest challenges and benefits of that migration?”
  • “How does knowledge sharing work among engineers at Monzo? Do you do any pairing, mobbing, documentation?”

Interview

  • Format: Review of a small existing React app created using create-react-app (no additional dependencies)
  • Environment: GitHub Codespaces with Live Share extension for collaboration
  • Assessment Areas:
    • Approach to technical problems
    • Coding ability
    • Collaboration skills
  • Preparation: No specific preparation required, time will be given to familiarize with the codebase

Approach

  1. Take time to understand the codebase before suggesting changes.
  2. Verbalize your thought process when reviewing code and suggesting improvements.
  3. Demonstrate collaboration skills by engaging with the interviewer as a teammate.
  4. Show attention to detail by considering edge cases, user experience, and accessibility.
  5. Balance pragmatism with best practices to show you understand real-world engineering trade-offs.

What to Expect

The interview will assess:

  • How you approach technical problems
  • Your coding ability
  • How you work with others

Given Debora’s expertise, she may pay particular attention to:

  • Component architecture and reusability
  • Accessibility implementation
  • Code organization and documentation
  • Performance considerations

Interviewer Profile Analysis: Debora Ornellas

Background and Role

  • Software (web) engineer at Monzo Bank
  • Based in London, UK
  • Will be conducting the pair programming interview session

Technical Expertise

  • Main Stack: React/NextJS, HTML, CSS, Apollo GraphQL, Node, AWS Serverless
  • Current Focus Areas:
    • Web Accessibility
    • Front-end performance
    • CSS styling (animations, transitions, new features)
  • Documentation: Self-described “documentation evangelist”
  • Tools: Mentions Storybook as a favorite tool

Professional Interests

  • Values well-documented codebases
  • Has experience with component-based architecture
  • Interested in TypeScript (based on pinned repositories)
  • Has worked with NestJS (has a testing examples repository)
  • Participates in ReactJS community (mentioned speaking at ReactJS Girls Meetup about Button components)

Potential Interview Focus Areas

Based on her expertise and interests, she may focus on:

  1. React component architecture and best practices
  2. Accessibility implementation in React applications
  3. Code organization and documentation
  4. Performance optimization techniques
  5. TypeScript integration with React
  6. Component testing approaches

Communication Style

From her GitHub profile and the fact that she speaks at meetups, she likely values:

  • Clear communication about technical decisions
  • Well-structured code with good documentation
  • Thoughtful approaches to component design
  • Consideration for accessibility and performance

Questions

  • Questions About Debora’s Experience and Work

  1. “I noticed you’re focused on web accessibility and front-end performance. What accessibility improvements have you found most impactful at Monzo?”
  2. “Could you share how you approach documentation at Monzo? I saw you’re a documentation evangelist who values Storybook.”
  3. “What’s been your most interesting technical challenge while working with React/NextJS at Monzo?”
  4. “I read you spoke at ReactJS Girls Meetup about Button components. How do you approach component design at Monzo?”

Questions About the Team and Work Environment

  1. “How is the web engineering team structured at Monzo? Do you work in cross-functional squads?”
  2. “What does collaboration between web engineers and other disciplines like design and product typically look like?”
  3. “How do you balance development velocity with code quality in your team?”
  4. “What’s your approach to testing and quality assurance for web applications?”

Questions About Technical Practices

  1. “I saw Monzo migrated from Jekyll and Gatsby to NextJS. What were the biggest challenges and benefits of that migration?”
  2. “How do you handle state management in your React applications?”
  3. “What’s your approach to performance optimization for web applications?”
  4. “How do you ensure accessibility standards are met across Monzo’s web platforms?”

Questions About Growth and Development

  1. “What learning opportunities are available for web engineers at Monzo?”
  2. “How does Monzo support engineers in developing their technical and soft skills?”
  3. “What does career progression look like for web engineers at Monzo?”
  4. “How does knowledge sharing work among engineers at Monzo?”

Questions About Current Projects

  1. “What are some interesting projects the web engineering team is currently working on?”
  2. “How does the web team contribute to Monzo’s overall mission of making money work for everyone?”
  3. “What technical challenges is the web team currently facing?”
  4. “How do you measure success for web engineering projects at Monzo?”

Questions to ask collaborators

  • What’s one challenge you occasionally or regularly face in your job?

  • Can you tell me about the team I’ll be working with?

  • What learning and professional development opportunities are available in the company?

🎯 Screening Rounds with HR/Recruiters

Get to Know the Criteria

  • What are the skills, characteristics, or experiences that the team is looking for in an ideal candidate?
  • When is the anticipated starting date for this position?

Understand the Hiring Team

  • Will I have the opportunity to meet my potential manager or colleagues during the interview process?
  • Can you tell me about the team I’ll be working with directly, including who I will report to and the team’s structure?

Learn About the Company

  • What are the current goals that the company is focused on, and how does this team support those goals?
  • Can you give me some examples of the most and least desirable aspects of the company’s culture?
  • How frequently do employees make themselves available outside of working hours?

🧑‍💻 Rounds with the Hiring Team/Team You Will Join

Evaluate Job Fit

  • Can you show me examples of projects I’d be working on and the technologies I will use?
  • Can you describe a typical day or week for a developer in your team?
  • What are some of the challenges you expect the person in this position to face?
  • What does it look like during the busiest and toughest times for this role?
  • Will there be opportunities for stretch assignments where I can learn and use new skills?

🕹️ Check Your Manager’s Style

  • What type of information is shared with employees? Is revenue, profits, expenses, salary ranges, etc., shared?
  • Who will I report to? Can you tell me more about their style of supervision?

🧠 Understand Team Dynamics and Culture

  • What is the team structure and how does this role fit into the team?
  • How would you describe the work environment here — is the work more collaborative or independent?
  • Can you give me some examples of the most and least desirable aspects of the team’s culture?
  • How frequently do team members make themselves available outside of business hours?

📢 Rounds with Your Potential Manager

  • Can you tell me about the kind of supervision you provide?
  • Thinking back to people you’ve seen do this work, what differentiated the ones who were good from those who were great?
  • What are you hoping this person will accomplish in their first six months and in their first year?
  • What have been the top accomplishments of the organisation over the past year?

🎯 Questions to Ask Founders/Leadership

  • What are the current goals the company is focused on, and how does this team contribute to those goals?
  • What direction do you see this company heading in over the next few years?
  • What are the current focus areas for the company as a whole?

🤝 Questions to Ask the Team’s Collaborators

  • What’s one challenge you occasionally or regularly face in your job?
  • Can you tell me about the team I’ll be working with?
  • What learning and professional development opportunities are available in the company?