Developer Tools and Workflow Optimization
Developer-tool questions test whether you can inspect and tune a workflow. The Developer palette includes Message (warn/error/stop), Test (conditional branching), Dynamic Input (read a file whose path is a field), Dynamic Rename (rename fields from data), Run Command, and Block Until Done (forces execution order when parallel branches would race). Explorer tools (Insight, Browse) surface intermediate data. Workflow Dependencies lists inputs and macros for packaging.
Performance concepts: the engine processes tools in dependency order and can run independent branches in parallel; Block Until Done serializes them when order matters (e.g., write a file then read it). Cache and Run speeds iteration. Avoid unnecessary Append Fields (cartesian blowups), excessive Join fan-out, and repeated Dynamic Input calls. Use Select early to drop unused fields and reduce memory. Test tool routes records down True/False outputs based on an expression.
Traps: Dynamic Input needs a field containing a valid, templated path; the tool must be configured with a template file. Dynamic Rename modes (formula, first row, right input) change behavior significantly. Run Command is a security concern and is often disabled. Block Until Done on a single output doesn't serialize multiple branches - you need one per branch or a chained approach.
Worked example: write a summary CSV, then a downstream tool reads it. Without Block Until Done, the read may fire before the write. Insert Block Until Done before the Output and connect the read path from its output. Rule of thumb: Parallel is default; serialize deliberately.