Software Engineer Interview Questions

Software Engineer Interview Questions

I Software engineer scrivono i programmi per progettare e sviluppare software informatici. I colloqui sono prettamente tecnici, quindi preparati ad affrontare problemi di programmazione e rompicapi matematici. Le domande specifiche che ti saranno poste dipenderanno dal tipo di posizione che stai cercando nell'ambito della programmazione. Prova a fare le dovute ricerche su una disciplina software specifica, come lo sviluppo si siti web, di applicazioni o di sistemi.

Domande tipiche dei colloqui per Software engineer e come rispondere

Question 1

Domanda 1: Come descriveresti il tuo processo di programmazione?

How to answer
Come rispondere: Nel rispondere a una domanda sul processo o ciclo di vita per lo sviluppo e la progettazione di un software, è utile descrivere tutti i passaggi, a partire dall'ottenimento dei requisiti per il prodotto finale. Includi quanti più dettagli possibile per dare all'intervistatore maggiori informazioni su eventuali lavori svolti in qualità di Software engineer e su come hai gestito gli incarichi, così da dimostrare che sei in grado di affrontare un progetto dall'inizio alla fine.
Question 2

Domanda 2: Quali linguaggi di programmazione conosci e preferisci?

How to answer
Come rispondere: L'intervistatore vuole sapere quali linguaggi di programmazione conosci meglio e quali preferisci. Non esiste una risposta giusta o sbagliata a questa domanda, il cui scopo è invece ottenere informazioni approfondite sulle tue capacità e competenze di programmazione. Se nell'offerta di lavoro per la quale ti stai candidando sono indicate preferenze per dei linguaggi specifici, menzionali quando parli dei linguaggi software che conosci.
Question 3

Domanda 3: Parlami di un progetto che hai portato a termine con successo.

How to answer
Come rispondere: Nel descrivere un progetto che hai portato a termine con successo, è utile individuare gli aspetti che hanno funzionato e descrivere in dettaglio i diversi elementi delle attività svolte. Puoi descrivere il team con il quale hai lavorato, il modo in cui hai gestito i tempi e il contributo specifico che hai apportato.

419,307 software engineer interview questions shared by candidates

Had 30 minutes to do this quiz. 1.Which of the following decimal numbers has an exact representation in binary notation? (Zero or more may be correct.) A. 0.1 B. 0.2 C. 0.3 D. 0.4 E. 0.5 F. None of the above. 2 .Bob writes down a number between 1 and 1000. Mary must determine that number by asking "yes/no" questions of Bob. Mary knows that Bob always tells the truth. If Mary uses an optimal strategy, then she will determine the answer at the end of exactly how many questions in the worst case? A. 1,000 B. 999 C. 500 D. 32 E. 10 3. Consider a singly linked list of the form cid:image001.gif@01CEF279.4C2C0140 where F is a pointer to the first element in the list and L is a pointer to the last element in the list. The time of which of the following operations depends on the length of the list? (Exactly one answer is correct.) A. Delete the last element of the list. B. Delete the first element of the list. C. Add an element after the last element of the list. D. Add an element before the first element of the list. E. Interchange the first two elements of the list. 4. p = 1; k = 0; while( k < n ) { p = 2 * p; k = k + 1; } For the program fragment above, which of the following is a loop invariant; i.e., true at the beginning of each execution of the loop and at the completion of the loop? A. p = k + 1 B. p = (k + 1)2 C. p = (k + 1)2k D. p = 2k E. p = 2k+1 5. A particular BNF definition for a "word" is given by the following rules. <word> ::= <letter> | <letter><pairlet> | <letter><pairdig> <pairlet> ::= <letter><letter> | <pairlet><letter><letter> <pairdig> ::= <digit><digit> | <pairdig><digit><digit> <letter> ::= a|b|c|...|y|z <digit> ::= 0|1|2|...|9 Which of the following lexical entities can be derived from <word>? (Zero or more answers may be correct.) A. word B. words C. c22 D. 42 E. None of the above. 6. If the variables below are properly initialized, and if i remains within array bounds, then the code below implements the stack operations Push and Pop. Note that the stack is held in an array S[1..N] indexed by the variable i. Push: begin S[i] := x; i :=i + 1 end Pop: begin i:=i - 1; x:= S[i] end Which of the following statements correctly initializes i for this implementation of a stack? A. i := N B. i := N-1 C. i := 1 D. i := 0 E. i := N/2 7. Consider a virtual memory with M resident pages and a page reference sequence p1, p2, . . ., pN of N distinct requests. Assume that physical memory is initially filled with unrelated pages, N = 2M, and a FIFO page replacement algorithm is used. If the access pattern is p1, p2, . . ., pN repeated three times, then the number of page faults is A. N/2 B. N C. N + 3 D. 2N E. 3N 8. Consider the following subroutine. int Func( int n ) { if( n == 4 ) return 2; else return 2 * Func( n + 1 ); } What value is returned by the subroutine call Func(2) ? A. 2 B. 4 C. 8 D. 16 E. 24 9. Consider a queue between the two processes indicated below. N is the capacity (maximum length) of the queue; e, f, and b are semaphores. "P" refers to the operation of acquiring (decrementing) a semaphore, and "V" refers to the operation of releasing (incrementing) a semaphore. init() { e = N; f = 0; b = 1; queue = EMPTY; } process1() { for(;;) { P(e); P(b); queue.enqueue(...); V(b); V(f); } } process2() { for(;;) { P(f); P(b); ... = queue.dequeue(); V(b); V(e); } } Which of the following statements is (are) true? (Zero or more may be correct.) A. The purpose of semaphore f is to ensure that dequeue is not executed on an empty queue. B. The purpose of semaphore e is to ensure that deadlock does not occur. C. The purpose of semaphore b is to provide mutual exclusion for queue operations. D. None of the above. 10. If V is a vector with n items and subroutine Exchange swaps its arguments, then the following code fragment sorts V in descending order. for( j = 0; j < n - 1; j++ ) for( k = 0; k < n - j - 1; k++ ) if( V[k] < V[k+1] ) Exchange( V[k], V[k+1] ); How many calls to Exchange are made if initially, V[i]=i, for i = 0, 1, 2, ..., n - 1 ? A.n-1 B. n C. n(n-1)/2 D.(n-1)(n-2) E. n(n-1)

Software Engineer

Interviewed at Glimmerglass Networks

3.2
Mar 3, 2014

Had 30 minutes to do this quiz. 1.Which of the following decimal numbers has an exact representation in binary notation? (Zero or more may be correct.) A. 0.1 B. 0.2 C. 0.3 D. 0.4 E. 0.5 F. None of the above. 2 .Bob writes down a number between 1 and 1000. Mary must determine that number by asking "yes/no" questions of Bob. Mary knows that Bob always tells the truth. If Mary uses an optimal strategy, then she will determine the answer at the end of exactly how many questions in the worst case? A. 1,000 B. 999 C. 500 D. 32 E. 10 3. Consider a singly linked list of the form cid:image001.gif@01CEF279.4C2C0140 where F is a pointer to the first element in the list and L is a pointer to the last element in the list. The time of which of the following operations depends on the length of the list? (Exactly one answer is correct.) A. Delete the last element of the list. B. Delete the first element of the list. C. Add an element after the last element of the list. D. Add an element before the first element of the list. E. Interchange the first two elements of the list. 4. p = 1; k = 0; while( k < n ) { p = 2 * p; k = k + 1; } For the program fragment above, which of the following is a loop invariant; i.e., true at the beginning of each execution of the loop and at the completion of the loop? A. p = k + 1 B. p = (k + 1)2 C. p = (k + 1)2k D. p = 2k E. p = 2k+1 5. A particular BNF definition for a "word" is given by the following rules. <word> ::= <letter> | <letter><pairlet> | <letter><pairdig> <pairlet> ::= <letter><letter> | <pairlet><letter><letter> <pairdig> ::= <digit><digit> | <pairdig><digit><digit> <letter> ::= a|b|c|...|y|z <digit> ::= 0|1|2|...|9 Which of the following lexical entities can be derived from <word>? (Zero or more answers may be correct.) A. word B. words C. c22 D. 42 E. None of the above. 6. If the variables below are properly initialized, and if i remains within array bounds, then the code below implements the stack operations Push and Pop. Note that the stack is held in an array S[1..N] indexed by the variable i. Push: begin S[i] := x; i :=i + 1 end Pop: begin i:=i - 1; x:= S[i] end Which of the following statements correctly initializes i for this implementation of a stack? A. i := N B. i := N-1 C. i := 1 D. i := 0 E. i := N/2 7. Consider a virtual memory with M resident pages and a page reference sequence p1, p2, . . ., pN of N distinct requests. Assume that physical memory is initially filled with unrelated pages, N = 2M, and a FIFO page replacement algorithm is used. If the access pattern is p1, p2, . . ., pN repeated three times, then the number of page faults is A. N/2 B. N C. N + 3 D. 2N E. 3N 8. Consider the following subroutine. int Func( int n ) { if( n == 4 ) return 2; else return 2 * Func( n + 1 ); } What value is returned by the subroutine call Func(2) ? A. 2 B. 4 C. 8 D. 16 E. 24 9. Consider a queue between the two processes indicated below. N is the capacity (maximum length) of the queue; e, f, and b are semaphores. "P" refers to the operation of acquiring (decrementing) a semaphore, and "V" refers to the operation of releasing (incrementing) a semaphore. init() { e = N; f = 0; b = 1; queue = EMPTY; } process1() { for(;;) { P(e); P(b); queue.enqueue(...); V(b); V(f); } } process2() { for(;;) { P(f); P(b); ... = queue.dequeue(); V(b); V(e); } } Which of the following statements is (are) true? (Zero or more may be correct.) A. The purpose of semaphore f is to ensure that dequeue is not executed on an empty queue. B. The purpose of semaphore e is to ensure that deadlock does not occur. C. The purpose of semaphore b is to provide mutual exclusion for queue operations. D. None of the above. 10. If V is a vector with n items and subroutine Exchange swaps its arguments, then the following code fragment sorts V in descending order. for( j = 0; j < n - 1; j++ ) for( k = 0; k < n - j - 1; k++ ) if( V[k] < V[k+1] ) Exchange( V[k], V[k+1] ); How many calls to Exchange are made if initially, V[i]=i, for i = 0, 1, 2, ..., n - 1 ? A.n-1 B. n C. n(n-1)/2 D.(n-1)(n-2) E. n(n-1)

Viewing 701 - 710 interview questions

Glassdoor has 419,307 interview questions and reports from Software engineer interviews. Prepare for your interview. Get hired. Love your job.