Easytrieve Senior Interview Questions

Senior Easytrieve interviews assume you have carried production pager responsibility or led maintenance on high-volume batch chains. Panels probe performance classification (I/O versus CPU versus sort-bound), storage below the 16 MB line, migration from Classic or older Plus releases to Broadcom 11.x function mode, and how you debug when month-end totals diverge after a macro library change. You may be asked to whiteboard a tuning plan without changing business rules, or walk through an abend from compiler listing to bad field overlay. This page provides senior-depth model answers, incident STAR story prompts, and technical tables for last-minute review. Answer with measured confidence: cite what you have operated, and separate that from what you would research in the manual on first use.

Progress0 of 0 lessons

Performance and Tuning

How do you tune an Easytrieve job missing its batch window?

Senior answer structure: classify bottleneck from SMF and job log (EXCP, CPU, sort disk); verify input volume change versus last week; check recent code or macro promotions; apply targeted fixes—BUFNO on dominant sequential file after storage check, presort if sort-bound, remove per-record DISPLAY, reduce VIRTUAL retention; regression test totals; document in ticket. Avoid random option changes without baseline. Mention coordinating with operations before adding WORK space that competes with other jobs.

Explain BUFNO tradeoffs in AMODE31 programs.

BUFNO increases QSAM buffers per sequential FILE, reducing read waits on large scans. Each buffer consumes below-the-line storage. Many files with high BUFNO can cause 878 abends or storage stress. Senior response: tune one hot file, monitor CSA/ECSA or compiler storage reports if available, consider AMODE64 migration if site supports it for large memory footprints.

When is external SORT mandatory in your opinion?

No universal rule—senior judgment: when three downstream Easytrieve and COBOL steps consume the same ordering, when internal sort duplicates DFSORT already paid for upstream, or when sort keys exceed Easytrieve step WORK limits. Conversely, single-consumer jobs with modest volume may keep internal SORT for simplicity. Show cost-of-change awareness.

Tuning levers senior panels expect you to name
LeverHelps whenWatch for
BUFNOSequential read-heavyBelow-16MB storage
Presorted inputSort-bound chainUpstream sort failure
VFM / VFMSPACVIRTUAL-heavy jobsTemp space contention
Report WORKReport phase slowDisk allocation spikes
Remove DEBUGCPU + SYSPRINT floodLosing dev trace

Debugging and Listings

How do you debug a numeric total that is wrong but job completes RC=0?

Wrong totals without abend imply logic or data issues. Steps: reproduce on subset; enable controlled DISPLAY or DEBUG in test; verify field types and decimal alignment; check macro expansion LIST for offset drift; compare break-level accumulators; validate input generation unchanged; binary search recent promotions. Senior candidates mention dump analysis and cross-reference listing to find dead or duplicate field definitions affecting work storage.

What compiler listings do you request for a complex change?

LIST for macro expansion, MAP or storage map if available, XREF for field usage, optional FLOW in dev only. Explain each listing purpose—interviewer tests whether you have read one under pressure. Production compiles balance audit requirements against CPU; senior devs negotiate standard prod LIST set with operations.

Procedures, Scope, and CALL

How do nested PERFORM and procedure scope affect design?

PROC local to activity; nested PERFORM stacks until END-PROC. Cannot PERFORM across JOB and REPORT. Shared logic across activities: macros generating PROC stubs, CALL external subprogram, or disciplined duplication with comments linking sync points. Senior answer warns against COPY-paste drift—use macro or called module with version control.

When do you CALL versus macro versus PERFORM?

PERFORM: runtime logic same activity. Macro: compile-time shared static structure. CALL: shared executable across languages or large subsystem with own release cycle. CALL on CICS requires conversational rules when applicable. Tradeoffs: CALL adds linkage overhead; macro requires recompile cascade.

Migration and Compatibility

Describe migrating Easytrieve libraries to 11.6 function mode.

Inventory compile with compatibility listing; scan reserved word conflicts (SET, others per release notes); rename fields and retest; update macro libraries first; regression compile application tiers; parallel run totals against Classic if available; cutover with rollback load modules. Senior answer includes project governance, not only technical rename.

What is compatibility mode versus function mode?

Compatibility mode eases transition by accepting some legacy syntax with warnings; function mode enforces current language rules. Teams schedule function-mode enforcement after cleanup. Admit site-specific compile PARM names while explaining the concept clearly.

Multi-File and Complex Batch

How do you design a job matching two files?

Options: presort both and merge in one pass if keys align; read driver file JOB INPUT and keyed READ lookup on master; load small master to table; use MATCH patterns if supported in your shop style. Discuss duplicate keys, unmatched records, and exception reporting. Senior depth includes restart design and which files must be recovered after abend.

Behavioral and Incident Questions

Tell me about a production Easytrieve failure you resolved.

Use STAR: Situation (month-end report wrong store totals); Task (restore before finance deadline); Action (traced to macro promotion shifting packed field, regression gap); Result (hotfix revert, added macro regression compile to checklist). Emphasize communication with operations and documented prevention.

How do you mentor junior developers on Easytrieve?

Code review against standards, pair on compile LIST reading, small test datasets, forbid production DISPLAY habits early, point to pattern library pages. Senior leadership signal without arrogance.

Explain It Like I'm Five

Senior interview is like being the mechanic who fixes the school bus when it breaks on a field trip—not just driving. You know where the engine, fuel, and tires are, you measure before swapping parts, and you tell the teacher how long until the bus runs again.

Practice Exercises

  1. Draft a STAR story for a macro-related production incident (real or realistic).
  2. Write a tuning plan template with baseline metrics and rollback criteria.
  3. List migration steps from compatibility to function mode for one application.
  4. Explain nested PERFORM limits and one workaround for cross-activity logic.
  5. Compare three debugging listings and when you open each.

Quiz

Test Your Knowledge

1. Before raising BUFNO on many files you should:

  • Measure I/O and watch below-the-line storage in AMODE31
  • Always use 255
  • Disable SORT
  • Remove REPORT

2. SET became reserved in recent releases—impact:

  • Legacy field named SET must rename before function-mode compile
  • No impact ever
  • JCL change only
  • SCREEN only

3. DEBUG FLOW in production is risky because:

  • It adds trace overhead and voluminous output
  • It speeds jobs
  • It replaces compile
  • It fixes abends automatically

4. Procedure recursion between A and B is:

  • Not permitted—mutual PERFORM recursion disallowed
  • Required
  • Unlimited depth
  • JCL feature

5. Senior incident response starts with:

  • Reproduce scope, compare recent changes, check SMF and SYSPRINT
  • Rewrite entire program
  • Disable security
  • Skip change control
Published
Read time17 min
AuthorMainframeMaster
Reviewed by MainframeMaster teamVerified: Broadcom Easytrieve senior production topicsSources: Broadcom Easytrieve performance and migration documentationApplies to: Easytrieve senior interview preparation