Software Engineer

Software EngineerBA3Medium

Barclays is looking for talented Software Engineers at the BA3 level to join our dynamic technology teams. This role involves designing, developing, and maintaining high-quality software solutions that drive our business forward. We value innovation, collaboration, and a commitment to excellence.

Rounds·3

Timeline·~14d

Experience·2 - 5 yrs

Comp band·US$85000 - US$120000

Interview time·135 min

Evaluation

What they measure.

  • Technical proficiency in relevant programming languages and frameworks.
  • Problem-solving skills and analytical thinking.
  • Understanding of software development principles and best practices.
  • Ability to write clean, efficient, and maintainable code.

Preparation

How to prepare.

Tips

  1. Review core computer science concepts (data structures, algorithms, operating systems, databases).
  2. Practice coding problems on platforms like LeetCode, HackerRank, or similar.
  3. Understand object-oriented programming principles.
  4. Familiarize yourself with the technologies mentioned in the job description.
  5. Prepare examples for behavioral questions using the STAR method (Situation, Task, Action, Result).
  6. Research Barclays' values, mission, and recent projects.
  7. Understand the basics of financial markets and banking if applicable to the specific role.

Study plan

Fig · Study plan — 05 phases

01 / 05
01

Phase 01 of 05

Data Structures and Algorithms

Weeks 1-2: Data Structures & Algorithms (Arrays, Lists, Trees, Graphs, Hash Tables, Sorting, Searching). Practice 20-30 problems.

Weeks 1-2: Focus on Data Structures and Algorithms. Cover arrays, linked lists, trees, graphs, hash tables, sorting, and searching algorithms. Practice implementing these and analyzing their time and space complexity. Aim for at least 10-15 problems per week.

Questions

Commonly asked.

  • Write a function to reverse a linked list.
  • Given an array of integers, find the two numbers that add up to a specific target.
  • Explain the difference between a process and a thread.
  • Describe a situation where you had to deal with a difficult colleague.
  • How would you design a URL shortening service?
  • What are the principles of RESTful API design?
  • Tell me about a time you failed and what you learned from it.
  • How do you approach debugging a complex issue?
  • What is polymorphism?
  • Explain the concept of ACID properties in databases.

Locations

Regional differences.

Fig · Regions — 03 locations

01 / 03

Location

London

Interview focus

Understanding of UK financial market and regulationsExperience with Agile methodologies in a London-based teamAbility to work effectively in a multicultural team environment

Common questions

  • Tell me about a challenging project you worked on in London.
  • How do you handle tight deadlines in a fast-paced London environment?
  • Describe your experience with financial regulations relevant to the UK market.

Tips

  • Research current trends in the UK financial technology sector.
  • Be prepared to discuss your experience with specific UK regulatory frameworks.
  • Highlight any experience working with international teams.

Rounds

Round-by-round.

Expand a step for evaluation criteria, sample questions, and prep notes.

Med

Technical Interview - Coding · 45 min · Software Engineer / Senior Software Engineer

This round focuses on assessing your fundamental programming skills. You will be asked to solve coding problems, typically involving data structures and algorithms. The interviewer will evaluate your ability to understand the problem, devise an efficient solution, write clean code, and explain your thought process. Expect questions on arrays, strings, linked lists, trees, graphs, sorting, and searching.

What they look for

Strong grasp of data structures and algorithms.Ability to translate a problem into code.Clear and logical thinking.Attention to detail.

Evaluation

  • Correctness of the solution.
  • Efficiency of the solution (time and space complexity).
  • Code quality and readability.
  • Problem-solving approach.
  • Communication of the solution.

Sample questions

  • Implement a function to check if a binary tree is a Binary Search Tree (BST).

    Data StructuresAlgorithmsTrees
  • Given a string, find the length of the longest substring without repeating characters.

    Data StructuresAlgorithmsStringsSliding Window
  • Write a function to merge two sorted arrays.

    Data StructuresAlgorithmsArrays

Prep for this round

  1. 01Practice coding problems regularly.
  2. 02Understand the time and space complexity of your solutions.
  3. 03Be prepared to explain your approach before coding.
  4. 04Write clean, well-commented code.
  5. 05Test your code with edge cases.

Common rejection reasons

  • ×Inability to solve basic coding problems.
  • ×Poor understanding of fundamental data structures and algorithms.
  • ×Lack of clarity in explaining thought process.
  • ×Not asking clarifying questions.

DSA

Coding questions at Barclays.

Frequently reported on Barclays loops

Other guides

More at Barclays.