SAP ABAP Performance Tuning Interview Questions
Performance tuning is almost never asked as a definition question. It arrives as a scenario β a report that used to finish in minutes now runs for hours β and the interviewer is measuring whether you measure. Candidates who start listing optimisations before naming a measurement tool are the ones who get filtered out.
This page collects reviewed ABAP performance and Open SQL interview questions with complete written answers. Between them they cover the analysis path (trace before change), the database side (selective WHERE clauses, index usage, aggregate and join behaviour, buffering), the ABAP side (nested loops, sorted and hashed access to internal tables, reads inside loops), and the S/4HANA-era question of what should be pushed down to the database instead of looped in ABAP.
The answers deliberately keep the order that works in a real interview: what you would measure, what the measurement would tell you, what you would change, and how you would prove the change helped. That last step is the one most candidates skip and most interviewers are listening for.
What interviewers actually probe
Measure first
Expect to be asked which tool you would reach for before touching code. SQL trace and runtime analysis are the two answers that carry weight, and being able to say what each one shows you β statements and their cost versus where the time is spent in the program β matters more than naming them.
Selectivity and indexes
Most slow SQL in ABAP is a selection that cannot use an index or a read placed inside a loop. Interviewers probe whether you reason about which fields are actually restricted, not whether you can recite 'add an index'.
Internal table access
Standard, sorted and hashed tables, binary search on a sorted table, and the cost of nested loops are near-guaranteed questions at 2β6 years of experience, usually as 'this loop is slow β what would you change?'.
Pushdown on HANA
For S/4HANA projects the question becomes where the logic belongs. Aggregation, joins and filtering done by the database instead of by an ABAP loop is the expected direction, along with an honest account of when that is not worth it.
12 questions with full answers
Ordered from foundational to advanced. No sign-in required.
2. Why is SELECT inside LOOP considered bad for performance?
3. A nested LOOP AT itab1 / LOOP AT itab2 WHERE key = itab1-key is a hotspot. How do you refactor it?
4. How do you optimise a LOOP AT itab WHERE ... on a large standard table?
5. A memory dump (TSV_TNEW_PAGE_ALLOC_FAILED) occurs in a report processing 3M rows. What do you change?
6. What is code push-down and how does it change your ABAP performance mindset on HANA?
7. A report takes 30 minutes. How would you start performance analysis?
8. Explain buffered vs non-buffered DB tables and when buffering hurts more than it helps.
9. How would you use parallel processing (aRFC or bgRFC) to shorten a batch run, and what risks do you plan for?
10. A report runs for 2 hours on production and 5 seconds in DEV. How do you approach tuning?
11. A job is fast in DEV/QA but slow in production only during month-end. Where do you start?
12. How would you assess the performance regression of a transport before releasing it to production?
Practise by experience level
The questions above are tagged by the experience levels they are normally asked at, so the same page works for a first interview and for a lead-developer round.
SAP ABAP Performance Tuning Interview Questions FAQ
What is the first thing you do when a report is reported as slow?
Reproduce it and measure it. A runtime analysis shows where the program spends its time and an SQL trace shows which statements the database actually executed and how expensive they were. Only after that measurement does it make sense to talk about indexes, buffering or restructuring loops.
Why is a SELECT inside a LOOP considered a problem?
Because it turns one database round trip into as many round trips as the loop has rows, and each of them carries fixed overhead regardless of how small the result is. The standard remedies interviewers expect are reading the required set once into an internal table and then working locally, or letting the database do the join and aggregation in a single statement.
How do you decide between a sorted table and a hashed table?
By the access pattern. A hashed table is for single-record access by full key and gives constant-time reads. A sorted table is for reads by a leading part of the key, for ranges and for processing in key order. A standard table with a linear search is the option to justify, not the default.
What does code pushdown mean in ABAP on HANA?
It means letting the database do set-oriented work β filtering, joining, aggregating, calculating β instead of transporting rows into ABAP and looping over them. In practice that shows up as more expressive Open SQL and CDS-based models, and as removing ABAP loops that only exist to add up or filter what the database could have returned already.
How do you prove a tuning change actually worked?
By comparing the same measurement before and after on comparable data volumes, and by checking that the result set is unchanged. Interviewers value the second half of that answer: a faster program that returns different data is a defect, not an optimisation.
Next practice step
Related SAP interview topics
ERP Climb is an independent educational platform and is not affiliated with SAP SE.