paypal/san jose/2019/在职/SWE/Onsite/fail

职位:fullstack engineer,用js,react

第一轮:

  • 自我介绍

  • 使用过哪些技术

  • React life cycle

  • CSS 如何上下左右居中

  • CSS 如何让一个 Div 始终位于另一个 Div 上面

  • React angular 的区别

Coding:

Input: “paypal_is_payment”

Output: “p3a2y2……”

如何只输出 arr = [‘p’,’a’] 中存在的字符

如何让输出的顺序按照字母顺序排列

实现一个 React 提交表格 (从前端一直到后端)

第二轮:

  • Promise: 如何嵌套 Promise

  • Java Spring 的工作原理

  • 如果我有 n 个 function 如何使用 Promise 使他们同步执行

  • flatten Array

  • 实现一个 React 组件, 点击按钮, 显示内容, 再次点击内容消失

第三轮:

  • What did you do in your last project on your resume?

  • Explain the challenging/interesting part of your last project, can you draw and write some related code on the whiteboard?

  • What is closure, its pros and cons

  • 写promise chain, All of following methods are returning promises

auth()

getAddress()

editAddress()

editEmail()

Create a chain of promises that will do this on each step of the chain:

Step 1 - Authenticate user

Step 2 - Get getAddress

Step 3 - Edit address and edit email in parallel

Step 4 – print success on the console

第四轮:

  • 如何在 Node js 里面做 auth

  • map the CRUD operations to http methods on a restful api?

  • promises

  • Write a function to find the most repeated number in the array.

Input: [5,4,3,2,1,4,3,2,1,3,2,1,2,1,1]

Output: 1

follow up: check corner case

  • react - redux, submit form workflow

  • react life-cycle

  • redux immutable, shallow equality checking