LLMs in Software Engineering Practice

how do software engineers actually use LLMs, and what do organisations do about it?

Active since 2023.

With LLMs now performing a large share of everyday software engineering activities, organisations have moved quickly to integrate them into their internal processes. What is far less clear is what engineers actually do with these tools, how much the way they are prompted matters, and what happens at the organisational level once the tools are in use.

ICET-lab studies three connected aspects:

  • The usage of LLMs and LLM chatbots in software engineering practice.
  • The design of prompts and assistants for tasks across the software development lifecycle.
  • The policies organisations build around them.

How engineers use them

Our observational study of 24 professional engineers using ChatGPT over a week in their own jobs (Khojah et al., 2024) found that practitioners rarely expect ready-to-use artifacts. They far more often ask for guidance on how to approach a task, or for an explanation of a topic in more abstract terms. From a categorisation of their dialogues, we derive three purposes for starting a conversation with an assistant: to manipulate software artifacts, to get guidance on solving a problem, and to get training on a skill or concept.

The purpose of the interaction, together with internal factors (how the engineer prompts) and external factors (the organisation and its policy), shapes the engineer's experience in terms of perceived productivity and trust.

Framework of ChatGPT usage in software engineering industry.

How much prompting actually matters

The internal factors turned out to be worth a study of their own. CodePromptEval (Khojah et al., 2025) is a dataset of 7,072 prompts covering five prompt techniques (few-shot examples, persona, chain-of-thought, function signature, and list of packages) and every combination of them, evaluated across three LLMs on 221 function-level generation tasks.

Pass@1 for all 32 combinations of prompt techniques, exemplified for GPT-4o. The gap between the best and worst combination is roughly ten percentage points.

Interestingly, we find that most of the techniques that dominate practitioner advice do not really add much, and some combinations make things worse. The difference between the best and the worst combination of techniques is about ten percentage points, meaning prompt programming has a noticeable effect on roughly one generation task in ten. Correctness is also not the whole story: we find that techniques that help correctness do not necessarily help the similarity or the quality of the resulting code.

What organisations do about it

Adoption is not only a technical question. We interviewed managers at 11 software organisations across four countries in Europe and Asia about how they write LLM policy, and what drives it (Khojah et al., 2026). The concerns that shape these policies (ownership and quality of generated content, accountability, and the risk of sensitive data leaving the organisation through an external API) are largely not the ones the research literature focuses on.

In our ongoing work in this theme, we are studying how context provided in a prompt affects the quality of generated artifacts, and how the picture above changes as engineers move from chat interfaces to autonomous coding agents.

Contacts:

Ranim Khojah

Dr. Larissa Salerno

Dr. Francisco Gomes de Oliveira Neto

Prof. Philipp Leitner

References

2026

  1. Large Language Model Company Policies and Policy Implications in Software Organizations
    Ranim Khojah, Mazen Mohamad, Linda Erlenhov, Francisco Gomes Oliveira Neto, and Philipp Leitner
    IEEE Software, 2026

2025

  1. TSE
    khojah.jpg
    The Impact of Prompt Programming on Function-Level Code Generation
    Ranim Khojah, Francisco Gomes Oliveira Neto, Mazen Mohamad, and Philipp Leitner
    IEEE Transactions on Software Engineering (TSE), 2025

2024

  1. Beyond Code Generation: An Observational Study of ChatGPT Usage in Software Engineering Practice
    Ranim Khojah, Mazen Mohamad, Philipp Leitner, and Francisco Gomes Oliveira Neto
    In Proceedings of the ACM International Conference on the Foundations of Software Engineering (FSE 2024), 2024