Software Engineer
Purpose of the role
Software Engineers are focused on understanding, building, and maintaining Redgate's products & systems as part of a collaborative, cross-functional team.
About the role
A software engineer who is new to their career or has some experience but is new to Redgate.
Typically focused on developing their fundamental software engineering skills. Capable of delivering smaller pieces of work, completing well-defined tasks, working solo or as part of a pair or mob.
Skills
Leadership
- Able to identify problems with the engineering team and process, and investigate potential causes.
- Occasionally takes a lead in engineering team processes.
Mentorship
- Works with other engineers in pairs and mobs.
- Shares new and existing knowledge with people on their team.
- Shares new and existing knowledge with people outside their team.
- Seeks guidance from peers to understand what to learn next.
Role-Specific
- Understands the syntax of languages used on the codebases you work on.
- Uses appropriate data structures to solve problems.
- Uses unit tests to confidently make changes to code.
- Understands the importance of the ‘test pyramid’.
- Understands the role of manual testing as part of development.
- Uses design philosophies, such as POLA, KISS, DRY and YAGNI as code is being written.
- Knows their IDE, and is able to use code completion, auto-formatting and refactoring tools to write code with less effort.
- Can use Internal tools (Product Release app, Check for Updates (CfU) administration, etc.) as necessary.
Communication
- Keeps team mates abreast of progress on tasks.
- Uses available tools to communicate effectively.
Emotional Intelligence
- Displays empathy towards colleagues.
- Gives unprompted positive feedback to a colleague.
- Able to commit to decisions even if disagreed with.
Delivery
- Follows team practices to deliver software.
- Successfully completes scoped pieces of work, with appropriate direction.
- Uses pairing, mob programming, or pull requests to improve their knowledge & understanding.
- Uses standard Redgate systems (including build tools and design systems) as appropriate.
Business Knowledge
- Understands team goals and objectives.
- Understand the needs of customers.
- Knows the problems solved by the tools they work on.