Frontend
Fala-me sobre as coleções Map e Set em JavaScript — o que sabes sobre elas?
Componentes compostos + React Context → transmissão de formEntity através do provedor em Form e consumo em FormItem. Form envolve os filhos em FormContext.Provider, e FormItem usa cloneElement para injetar value e onChange no Input. Armadilha: certifique-se de que o FormItem passe o nome ao manipulador de atualização. ```javascript const Form = ({ children, formEntity }) => ( <FormContext.Provider value={formEntity}>{children}</FormContext.Provider> ); const FormItem = ({ name, children }) => { const { state, handlers } = useContext(FormContext); return React.cloneElement(children, { value: state[name], onChange: (e) => handlers.updateValues({ name, value: e.target.value }), }); }; ```
Analise o componente Angular mostrado com FormControl, valueChanges, debounce e uma assinatura aninhada para procurar usuários: quais são os problemas nele e como você o refatoraria usando RxJS ou Signals, considerando o OnPush?
Implemente uma função de dispensa de dinheiro: de acordo com o valor solicitado e a configuração das notas disponíveis, determine se é possível dispensar esse valor, e retorne o conjunto de notas ou um erro/sinal de impossibilidade. Use os limites de notas fornecidos, levando em consideração a quantidade limitada de notas e a impossibilidade de formar o valor.
Se guardaste em cache o main.js e depois carregaste uma versão corrigida com o mesmo nome — o que acontecerá e como resolver isso?
Fale sobre os tipos de dados em TypeScript, tipos utilitários, diferenças entre tipos e interfaces, herança neles.
Como gerar corretamente tokens de autorização? O que deve estar dentro do token para se proteger contra ataques de força bruta?
Fale sobre as variáveis var, let, const: escopo, hoisting, zona morta temporária.
Escreva uma função que combine dois arrays ordenados por ordem crescente em um novo array ordenado, sem usar sort, spread, concat e métodos semelhantes de combinação.
Se declarar uma função e depois uma variável — ela será acessível dentro da função? Fale sobre o hoisting de variáveis e a zona morta temporária.
Como foi a sua interação no último projeto? Foi por Agile ou de outra forma?
Tarefa prática: criar uma aplicação frontend em Next.js que exiba uma lista de imóveis em forma de grelha de cartões, usando uma API pública real. O cartão deve conter campos legíveis (nome do projeto, cidade, número de quartos, área, etc.) e uma imagem.
Qual é a diferença entre display: none e visibility: hidden? Em que difere visibility: hidden de opacity: 0?
Como é que percebia qual tarefa assumir e qual delegar aos rapazes?
O que são portais (createPortal) no React?
Conte-nos sobre a sua experiência e o que fez no seu último emprego.
Fale sobre Feature Sliced Design (FSD): o que é e como você o aplicou no seu projeto?
Como organizar a interação assíncrona entre o frontend e o backend durante operações longas (por exemplo, iniciar um cálculo de avaliação)? Como lidar com os estados e atualizações?
Teve experiência de participar num projeto desde o início — desde a escolha da arquitetura e padrões até à implementação de funcionalidades em produção?
Como resolve desacordos técnicos na equipa quando as opiniões dos desenvolvedores divergem?