Software Engineer (Backend)
Roles and responsibilities
All engineers at Red Airship are expected to:
- Meet programming and quality standards by following production, productivity, quality, and customer-service standards; identifying work process improvements; implementing new technology.
- Integrate applications by studying and implementing API’s and libraries.
- Troubleshoot development and production problems across multiple environments and operating platforms.
- Support users by developing documentation and assistance tools.
- Work with the customer’s architects and developers.
- Hone your skills, update job knowledge by researching and trying out new technologies and software products; participate in educational opportunities; read professional publications; maintain personal networks; participate in professional organizations.
On top of these, a typical week at Red Airship in this role may involve:
- Preparing for an upcoming project, discussing the goals and expectations with the customer and take part in estimation activities,
- Making technical decisions, researching best practices or components required for a project,
- Delivering an engagement on-site, working with the customer’s architects and developers
- Take part in architecture design and solutioning activities, and
- Honing your skills, building applications and trying out new technologies and features.
Good foundational technical skills and some industry experience are a must. We don’t expect you to be experts in our entire tech stack, but we believe the best people can transfer their skills and experience to the language or framework where required.
- Good foundational technical skills and some industry experience are a must. We don’t expect you to be experts in our entire tech stack, but we believe the best people can transfer their skills and experience to the language or framework where required.
- Experience designing, building, and operating in-production data processing, web request handling, and report generation.
- Capacity to evaluate trade-offs between correctness, robustness, performance, space, and time
- Great interpersonal communications capabilities demonstrated through a history of successful software development projects
- Strong desire to tackle hard technical problems
- Bachelor’s level degree in Computer Science, engineering, mathematics, or another related field. In the absence of which, at least 2 years of working experience in related field.
- Knows OOP and functional programming, and when to apply which
- Comfortable talking to clients and end users.
- Good presentation skills, effective communication internally and externally
- High level of self-motivation and maturity
There are always extra skills that can give you an edge, not necessarily just in technology:
- Previous experience building solutions involving Drupal 6-8, microservices, real-time socket-based backend, relational and NoSQL databases, message queues, AWS/Digital ocean/Azure.
- Commercial acumen, experience working alongside commercial teams.
- Prior experience working for a technology startup
- Understands web security and best practices
- Experience with TDD
- Experience with the Agile mindset and SCRUM methodology
- Familiar with classic Linux and container-based environments
- Knows when, why, and how to accept technical debt