= Software engineer
{wiki}
A <software engineer> designs, implements and maintains <software> systems, applying <software engineering> methods to requirements, interfaces and long-term change. The work can include selecting representations, writing and reviewing code, developing <software testing>, diagnosing failures and measuring performance. For example, a storage-format change requires reasoning about compatibility and migration as well as a serializer's local correctness. The role overlaps with programming but often includes responsibility for how components behave together over time.
Back to article page