Here's what you will do in a nutshell:
- Create new features for Narrative's Vuejs web application. Work with Product and Design teams to create the best user experience and create modular, maintainable components.
- Design, implement and maintain embedded applications on Narrative's Data Marketplace which enhance the ability of customers to manage and manipulate data.
- Help select technologies and define the strategic direction for our system architecture
- Work on Narrative's Tacklebox UI library, designing creating reusable components and modules for use in all of Narrative's web applications.
- Review and evaluate team members' code contributions, delivering transparent, honest and direct feedback to your peers.
- While most of the work focuses on the frontend, this position is ideal for someone who would like to improve his/her backend and Functional Programming skills.
In a nutshell, our technical stack looks like:
- Backend: scala, AWS, spark, Iceberg, cats, cats-effect, http4s, and doobie
- Ops: EC2, Fargate, Lambda, Terraform, EMR, DynamoDB, S3, RDS, Step Functions, Jenkins, and Datadog
The Ideal Candidate
We are not looking for a 100% fit on all the technology buzzwords, but we are looking for someone with strong personal and technical skills who is eager to pick up new technologies as necessary. We are obviously going to expect much more from a senior candidate than we would from a junior one.
The ideal candidate should:
- Have proven experience using Amazon Web Services to deploy and host web applications and databases.
- Thoroughly understand the HTTP lifecycle and how the browser interacts with web APIs.
- Enjoy building fast, user-friendly UIs.
- Not be afraid of contributing to the entire stack when the need arises, given that frontend doesn’t simply mean HTML/CSS. For instance, a feature might require
- some metrics to be computed from a Spark Report
- creating a PostgreSQL migration script
- tweaking S3 permissions and terraform scripts for deployment
- Have the ability to lead the creation of architectural and design documents, collect requirements as well as feedback from the development and product teams and evalute new technologies as needed.
- Drive success in a flat organization with minimal process, interfacing with technical and non-technical team members as necessary.
- Communicate potential technical issues to relevant teams and adapt to changing requirements.
- Be mindful of the compromises that need to be done to be reactive on the business side while keeping the systems manageable in the long run.
- Live/work within +/- 3 hours of EST
The Team (Remote US and Canada)
We are a small, early stage, remote-first team looking for great developers who want to jump in and take major systems and user-facing features from design to launch.
We are building a data streaming marketplace that makes it easy to buy, sell, and win.
We do this by creating tools that reduce the friction and increase transparency in the data buying process, creating a win-win relationship between buyers and sellers.
You can learn more about Narrative by visiting https://www.narrative.io/
Apply by sending an email to firstname.lastname@example.org.
If you would like to have a chat to learn more about the company, our culture, or the team before formally applying, that's is fine too: just drop us a line at email@example.com.