← AT&T Interview Insights

AT&T·Software Engineer·Technical Phone Screen·Junior

JuniorPending
Jul 2026Remote

Summary

Absolute disaster of a technical screen. Couldn't think straight, blanked on basic logic problems, and walked away genuinely embarrassed for myself.

Questions Asked (1)

Q1

Write a boolean condition to check whether at least 2 out of 3 values in a list satisfy a given criteria.

Algorithms & Data Structures
Author's notes

I froze.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the criteria and the data type, then propose a solution that counts how many elements satisfy the criteria and checks if the count is at least 2. Discuss trade-offs between readability and efficiency, and mention edge cases like empty lists or null values.

Pro tip: Demonstrate awareness of short-circuit evaluation: you can stop counting once you reach 2, which can improve performance for large lists. Also, mention that the solution should be easily extendable to 'at least k out of n'.

1. Clarify the problem

Ask clarifying questions about the criteria (e.g., is it a function? a predicate?), the data type of the list, and whether the list can contain nulls or be empty.

2. Outline the approach

Explain that you will iterate through the list, count how many elements satisfy the criteria, and return true if the count is at least 2. Mention that you can short-circuit once the count reaches 2.

3. Write the code

Write a clean, readable implementation in your preferred language. Use a loop or stream operations, and ensure the condition is clearly expressed.

4. Test with edge cases

Walk through examples: exactly 2 satisfy, all 3 satisfy, fewer than 2 satisfy, empty list, and list with nulls. Verify the behavior.

5. Discuss complexity and alternatives

State the time complexity (O(n) worst case, but O(1) if short-circuiting early) and space complexity (O(1)). Mention alternative approaches like using a counter or functional programming.

Key Points to Mention

  • Short-circuit evaluation to stop counting once 2 matches are found
  • Handling edge cases: empty list, null elements, and lists with fewer than 3 elements
  • Time and space complexity analysis
  • Readability and maintainability of the code
  • Extensibility to 'at least k out of n'
  • Language-specific features (e.g., Java streams, Python list comprehensions)

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.