What is a Software Engineer? evryg’s Vision
A Software Engineer is a member of a multidisciplinary team whose role is to create automated solutions for solving problems related to information processing.
Within a company, this activity aims to design software that ultimately generates revenue and/or reduces costs. It is essential to bear in mind that this activity is carried out in a profit-driven context.
Understanding the Problem
The role of a Software Engineer is not primarily about writing code, but rather about:
- Understanding the full range of business challenges and being able to represent them as explanatory models that can be further analysed.
- Defining the software solutions that meet these needs.
- Ensuring that the implementation of these solutions precisely matches the specifications, notably through testing.
- Frequently deploying the solution into production, that is, into the environment exposed to end users (“You build it, you run it”).
Writing the Solution
Etymologically, software refers to the modifiable part of a computer, as opposed to hardware, which represents the fixed, physical component.
Thus, the software engineer is, literally, the one who constructs a product in the form of software.
- “ware” refers to a product that is tested, verified and deterministic, capable of precisely addressing a business challenge.
- “soft-” implies that software is malleable and adaptable, and must be able to adjust easily to changes in the business and the needs of its users.
Therefore, the Software Engineer designs software that must be able to evolve easily in response to business needs.
Collaboration
The Software Engineer works in a multidisciplinary environment, as part of a team in which every member has a strong appetite for change, is constantly seeking to learn, and is willing to challenge their own knowledge while sharing their expertise. They must also demonstrate excellent communication skills and possess a high capacity for collaboration.
We are convinced that the smallest unit of work is the team, not the individual.
A high-performing team must be multidisciplinary. In an operating theatre, the surgeon, the anaesthetist and the nurse work together to ensure the success of a procedure. Similarly, in a sports team, each player occupies a specific and indispensable role, whether as a goalkeeper, defender, midfielder or forward.