You are considered a technical leader on your team. You work efficiently and routinely deliver the right things with limited guidance. Your work focuses on complex, ambiguous problem areas in existing or new software initiatives. You take the long term view. You consider where each system is at in its life-cycle and where appropriate, proactively fix architecture deficiencies. You make existing systems simpler (e.g. by consolidating redundant systems, deleting unnecessary code, or removing/updating out of date documentation). You are able to take the lead on large projects that require the work of your team. You know how to divide a software project into parallel work that can be performed by you and other software engineers and then reassembled successfully into a cohesive launch. You enjoy coaching and developing other software engineers' technical skills.
ESSENTIAL DUTIES AND RESPONSIBILITIES
You understand the business impact of your systems and show good judgement when making technical trade-offs between your team's short-term business or operational needs and long-term technology needs. You are a key influencer in team strategy. You bring perspective and provide context for current technology choices and guide future technology choices. You understand that not all problems are new (or require new software). You make appropriate architectural trade-offs (e.g. coarse or fine grained service separation) Your code submissions and approach to work are exemplary - your solutions are inventive, secure, easily maintainable, appropriately scaleable, and extensible. You write software that is easy for others to contribute to.
Accountabilities:
- You take ownership of team architecture, providing a system-wide view and design guidance.
- You make things simpler.
- You write simple, exemplary code that motivates the team to write quality code & follow the best standards.
- You drive engineering engagement best practices (e.g., Operational Excellence, Security, Quality, etc.) and set standards.
- You work to resolve the root cause of endemic problems including areas where your team limits the innovation of other teams (bottlenecks). This may require you to influence software decisions made by other teams.
- When confronted with discordant views, you are able to find the best way forward and influence others to follow that path (build consensus).
- You actively recruit and help others leverage your expertise, by coaching and mentoring in your organisation (or at your location).
- You contribute to the professional development of colleagues, improving their technical knowledge and the engineering practices.
- You ensure your team is stronger because of your presence, but does not require your presence to be successful.
- Most importantly, you are; humble & pragmatic.
REQUIRED QUALIFICATIONS AND ABILITIES
- Degree in Computer Science, related field, or equivalent work experience.
- Solid experience building and designing Highly scalable, Fault tolerant and always available systems.
- Good grasp in a broad range of data structures and algorithms.
- Solid understanding of design patterns and architectural principles.
- Expert in at least one modern programming language e.g. Java or Python or any Functional/OO programming languages.
- Good grasp on relational, non-relational databases, messaging queues and concurrency.
- Experience working with cloud-based infrastructure and technologies, preferably AWS. Understating of containers (e.g. Docker), and orchestration (Kubernetes).
- Passion to automate your work by using scripting languages e.g. Shell scripts.
- Strong sense of ownership, urgency, and drive.
- Demonstrated abilities driving operational excellence and best practices.
- Demonstrated experience in shipping high quality products and services.
- Familiarity working in an Agile environment.
- Ability to work with a Node.js stack, separating and updating it into Java services as required.
WHAT YOU GET IN RETURN
- An open and collaborative team who value and respect each other
- An autonomous environment where you are empowered to make decisions
- A new technical challenge around every corner, we’re never short of interesting problems to solve
Compensation:
- Salary determined by peer review and dependent on experience. Stock options, and other benefits for qualified candidates.
- This is a full-time job
If you are interested contact me on PM, or on telegram @stakeharbor