Job Description: Software Engineer

Mission

Create low-incident, maintainable, and requirement conform software. Support your teammates to grow, and resolve issues and incidents.

Create maintainable, secure, high quality, reliable, requirement conform software and operational environments.

Functions you contribute to

Function: Software Development

Responsibilities and Tasks

  • You implement code changes according to requirements.
  • Any question, ambiguity or incapability about your assigned tasks is promptly communicated to your project manager.
  • Every deliverable you work on can be and is quality-assured.
  • You ensure correct tooling is used across projects.
  • You automate repetitive tasks.
  • You identify potential project inefficiencies and communicate them to your project manager.
  • You ensure that the software you build is maintainable.
  • You deliver your results on time.
  • Before handing over results you test them as if you were the person you hand it over to.
  • You estimate your assigned tasks with great care.
    • Any delays, or problems you encounter are communicated accordingly to your project manager.
  • Any time you’re stuck you seek help from a colleague, the latest after 30 minutes.
  • You own your tasks:
    • Document the progress of your tasks daily
    • Help your colleagues with issues and questions about your code/features
    • Stay within your estimation
  • You share your ideas and newly learned skills with your colleagues.
  • You show up prepared and on time for your meetings.
  • You create reviewable Pull Requests and review the work of your colleagues.

Function: Infrastructure Provisioning

Responsibilities and Tasks

  • Creating value based on provisioned IT infrastructure
  • You strive for maximum security, performance, and uptime.
  • You ensure developability/testability for your peers (testing and handover in staging systems).
  • You communicate outages and potential issues to your project manager.
  • You create observable infrastructure. Function: Maintenance Responsibilities and Tasks
  • You ensure the software is up-to-date according to maintenance requirements.
  • You audit and report the state of software projects.
  • You create overviews about who has access to what and maintain proper permission distribution. Any obstacles or ambiguities is reported promptly to your project manager.
  • You create forecasts for the updatability of your projects and report them to your project manager.
  • You expand and update the project’s documentation - README, Issues, Documents, and Wiki pages.
  • You ensure the developability of the project.
    • Project setup should take < 30 minutes for developers
    • All needed commands and tools are documented.
    • Quirks and flaws are documented.
    • You create and update the onboarding guide of projects.
  • You fix bugs reported by the client, the team or Sentry - according to the maintenance sprint planning (corrective maintenance).
  • You ensure continuous and future operability of a project (preventive and perfective maintenance).
  • Monitoring and alerting are created and maintained by you.
  • You identify potential security risks or issues and report them to your project manager. Function: Incident Handling Responsibilities and Tasks
  • You handle indents by the following pattern: Response - Plan - Execution - Deployment
    1. You acknowledge the assigned incident.
    2. You create a plan on how to deal with the incident and communicate it.
    3. You execute the plan according to the given constraints (e.g. time constraint, data constraints given by the client - potential outage - deployment after 4 pm)
    4. You deploy the executed plan and communicate the progress on the issue.
  • You are available to the given on-call duty plan. You respond within the given SLA time frame.
BLUESHOE GmbH
© 2024 BLUESHOE GmbH