Position: Software Development Engineer in Test (SDET)
Company: JustCoded
Experience required: 2y
English level: upper

**About The Role**

In this role you will be responsible for defining, designing, and implementing testing strategies to ensure that our app works as intended. You will also be responsible for completing all testing procedures, suggesting performance changes, and preparing performance reports.

You should be prepared to own and sustain the systems that you will create and you will be responsible for handing over your knowledge and expertise to your team as you progress and ultimately expand your role to take on new challenges.

**Responsibilities:**

- Pairing with developers in sprint planning, refinement, and delivery.
- Contribute to our DevOps, CI / CD, and platform engineering, with enthusiasm for serverless
- Engage in product discussions across the full stack ensuring key technological decisions take into consideration how deliverables will be tested and contribute to the definition of done.
- Plan & perform performance, capacity, and security testing where necessary utilising external support such as the user community or managing specialists.
- Help our team overcome roadblocks to planned development in collaboration with the product owner.
- Working in a fully automated CI / CD / CT pipeline that will ultimately adhere to stringent security regimes with separation of roles, break glass procedures, and panopticon observability.
- Participating in product and technology concepts, discovery, and design discussions and decisions.
- Leading the architecture and design of the systems under your ownership and ensuring they are adequately documented to facilitate quality reviews, audits, and successfully convey information to others with an interest in understanding the systems.- Leading the implementation of the systems under your ownership following the overall governance agreed by the team, ensuring that obligations to your team members are satisfied or renegotiated promptly.
- Fully understand the product requirements for the systems that you are building and capture these in the form of Projects, Milestones, and Tasks in Linear.
- Identifying and taking into consideration non-functional requirements in the design and implementation of the systems that you own.- Ownership of the release management process and providing clear, detailed, and unambiguous information as to the state of release candidates and release schedules.
- Escalating issues that you cannot manage without assistance from the broader team.

**About You:**

You will be conscientious; caring about our customers, our technology, our culture of performance, and of course, our mission. You thrive in autonomous, ambiguous roles that require you to be industrious.

There will be times when we will have to go the extra mile, work late or over the weekend - but it's not just a matter of working hard, it's about getting the job done in order to benefit our customers. You will be a self-starting individual who is motivated by the team's success, with initiative, a sense of fun, and good humour under pressure.

You will possess strong attention to detail, and you will have a proven track record of effective strategic planning, timely execution, and delivering results against company goals. You will have excellent communication and interpersonal skills, and you will take pride in being hands-on, data-driven, accountable, and highly motivated, with a team-player attitude.

Ideally, a In-depth knowledge of crypto is strongly preferred, passion for Bitcoin is a must.
Ultimately you are going to be an owner in this business, someone we can count on.

**Requirements:**

- Testing experience - both Manual & Automation - is essential
- Programming languages - Typescript, JavaScript and/or Go
- Ability to write and maintain test suites - Unit, API, E2E
- Experience with maintaining CI/CD pipelines
- Good understanding of Cloud services such as AWS
- Non-functional testing - Performance testing, Security testing
- Scripting - NodeJS, Bash
- E2E testing tools - WebdriverIO, Cypress, or similar
- API testing tools - Jest, Axios, GraphQL, or similar
- UT testing tools - Jest, Go Testing Package, React Test Utils, or similar
- Reporting tools - Allure, or similar
- CI/CD tools - Github Actions, Gitlab, Jenkins, or similar
- An open and honest approach to communication is a vital quality
- A high level of motivation to deliver world-class products to a global user base is crucial