Senior Software Engineer (Frontend) at Sanity in Oslo, Oslo, Norway

Apply for the Senior Software Engineer (Frontend) position at Sanity in Oslo, Oslo, Norway. Find the best jobs for you effortlessly with InJob.AI, your ultimate solution for job search. Discover top job opportunities and streamline your job search process.

alert circle

Job Description

<div>
 <strong>
  Who are we?
  <br/>
  <br/>
 </strong>
 Sanity.io is a modern, flexible content platform that replaces rigid legacy content management systems so companies like
 <strong>
  PUMA, Spotify, Figma, Riot Games
 </strong>
 , and
 <strong>
  Skims
 </strong>
 can create amazing digital experiences for their customers.
 <br/>
 <br/>
 One of our big differentiators is treating content as data so that it can be stored in a single source of truth but seamlessly adapted and personalized for any channel without extra effort. Forward-thinking companies choose Sanity because they can create tailored content authoring experiences, customized workflows, and content models that reflect their business.
 <br/>
 <br/>
 Backed by Netlify, Vercel, the founders of Twitter and Medium, Heroku&rsquo;s ex-CEO, and leading VCs like ICONIQ Growth, Threshold Ventures, and Lead Edge Capital, Sanity is at the epicenter of the modern digital product development stack.
 <br/>
 <br/>
 You can only build a great company with a great culture. Read about our values and join us in building a diverse and inclusive team.
 <br/>
 <br/>
 <strong>
  About The Role
  <br/>
  <br/>
 </strong>
 In this Senior Software Engineer (Frontend),
 <em>
  Fresh
 </em>
 <em>
  Initiative
 </em>
 , you will be part of the early team building out the initial processes and infrastructure and establishing operational excellence for a new feature on the Sanity platform. Additionally, you will be responsible for creating the core user experience and helping to make improvements that provide delightful and modern experiences to editorial teams of all sizes.
 <br/>
 <br/>
 <strong>
  What You Will Be Doing
  <br/>
  <br/>
 </strong>
 <ul>
  <li>
   Building user interfaces: planning and implementing delightful surfaces that touch multiple aspects of editorial experience.
  </li>
  <li>
   Thinking about collaboration: Everything in Sanity reacts in real-time to changes in content. Every edit sends structured patches to the server and is applied to connected clients. Presence indicators show who&rsquo;s editing what. This means our APIs are reactive - &ldquo;fetch and subscribe&rdquo; rather than &ldquo;fetch and return&rdquo;.
  </li>
  <li>
   Debugging and optimizing: Keeping an eye on performance, figuring out the slowest paths and building good patterns to keep the user interface snappy is important.
  </li>
  <li>
   Learning and teaching: With a huge community of content editors and developers using the product, you&rsquo;ll have lots of opportunities to learn from what they are doing with Sanity and how we can make their lives easier. It also means there are opportunities to teach developers internally and externally about best practices and new approaches.
  </li>
  <li>
   Continuously improving: There is always room for improvement. We want to improve our test coverage, make our APIs more robust, decouple state from UI, stay up to date with the latest dependencies&hellip; In other words: always improving the product.
   <br/>
   <br/>
  </li>
 </ul>
 <strong>
  Technologies we expect you to know already:
  <br/>
  <br/>
 </strong>
 <ul>
  <li>
   React. Given our entire set of applications are rendered with React, we really do need you to know your way around useState and useEffect. We really hope you know about the React developer tools, and have gotten your way out of useEffect loops. Context isn&rsquo;t always the right choice, but we hope you&rsquo;ve got experience with it anyway. We&rsquo;d be very happy if you&rsquo;ve optimized some rendering in a React application, and we&rsquo;d be absolutely over the moon if you know what useSyncExternalStore is, or know the intricacies of strict mode.
  </li>
  <li>
   State management. We don&rsquo;t really care if you&rsquo;re an old-time Reflux user, have years of experience with Redux or if you&rsquo;re on the zustand train - but we do care that you know when and why you might reach for one of these. We&rsquo;d also like you to know about &ldquo;selectors&rdquo;, or other techniques of fine-grained subscription.
  </li>
  <li>
   Core web and browser concepts. You need to know what HTTP requests are, what the event loop is (and why it matters), how promises work, how to use browser development tools, and preferably also know your way around some DOM and browser APIs. In other words, you know what the fetch API is and roughly how it works, and you&rsquo;ve at least heard about IntersectionObserver and getBoundingClientRect.
  </li>
  <li>
   Module systems and bundling. No, we don&rsquo;t need you to be an expert on Webpack. But we DO need you to know what bundlers like Webpack, Vite and Rollup DO. Similarly, we don&rsquo;t expect you to solve any ESM vs CommonJS issue we may encounter, but we really hope you know what those two names mean, and how they are different.
  </li>
  <li>
   TypeScript. The basics: interfaces, types, some knowledge of generics. Why you shouldn&rsquo;t use any. If you care about type narrowing, discriminated unions and other fancy TypeScript features, we&rsquo;d be even happier!
  </li>
  <li>
   Unit testing. Using something like Jest, vitest, tap, mocha&hellip; The framework isn&rsquo;t important, what is important is that you know why and how to write tests. We&rsquo;d love it if you could talk about test isolation and the pros/cons of snapshot testing.
   <br/>
   <br/>
  </li>
 </ul>
 <strong>
  Stuff that would be a huge bonus if you know, but not a requirement:
  <br/>
  <br/>
 </strong>
 <ul>
  <li>
   Automated browser testing. Tools like Cypress, Playwright, Puppeteer, etc.
  </li>
  <li>
   Accessibility. Accessible design is good design. We&rsquo;re constantly striving to make Sanity tools as accessible and inclusive as possible, and a basic familiarity with Web Content Accessibility Guidelines and/or an understanding of how people with disabilities browse the web is always welcome.
   <br/>
   <br/>
  </li>
 </ul>
 <strong>
  We expect you to be:
  <br/>
  <br/>
 </strong>
 <ul>
  <li>
   A compassionate, friendly human being who cares about and shows respect to the people you work with and has empathy for our users. We want everyone to feel welcome in our community while using our product, regardless of who they are and what they already know.
  </li>
  <li>
   Pragmatic. While we strive to make the best possible solutions, we also need to get value to our users and make sure they are not blocked. This means that sometimes you will need to deliver an incomplete or imperfect solution, which we can iterate on over time, even though you might be tempted to hold off until it is &ldquo;complete.&rdquo;
  </li>
  <li>
   Conscious about readable, maintainable code. Thoughtful comments, consistent coding style, and following the best practices and guidelines established by the team.
  </li>
  <li>
   Able to collaborate effectively with people of different roles and backgrounds - product managers, fellow developers, external clients, and content authors.
   <br/>
   <br/>
  </li>
 </ul>
 <em>
  Not sure you meet 100% of our qualifications? Have an untraditional background? Do apply anyway!
  <br/>
  <br/>
 </em>
 <strong>
  What We Can Offer
  <br/>
  <br/>
 </strong>
 <ul>
  <li>
   A highly skilled, inspiring, and supportive team where long-term personal growth is encouraged and supported.
  </li>
  <li>
   Positive, flexible, and trust-based work environment.
  </li>
  <li>
   A very global, multi-culturally diverse group of colleagues and customers.
  </li>
  <li>
   Remote in Europe.
  </li>
  <li>
   Comprehensive health plans and perks.
  </li>
  <li>
   A healthy work-life balance that accommodates individual and family needs.
  </li>
  <li>
   Competitive salary and stock options program.
   <br/>
   <br/>
  </li>
 </ul>
 <em>
  Sanity.io
 </em>
 <em>
  pledges to be an organization that reflects the globally diverse audience that our product serves. We believe that in addition to hiring the best talent, a diversity of perspectives, ideas, and cultures leads to the creation of better products and services. We are committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital status, disability, or gender identity.
  <br/>
  <br/>
 </em>
</div>

AI Powered Job Insights

Top Interview Questions

People Faces

200+ professionals have found their dream job with InJob.ai this week.

salary

Salary Benefits

Salary details not provided

application process

Want to apply directly?

Apply for the Senior Software Engineer (Frontend) position at Sanity in Oslo, Oslo, Norway using https://www.linkedin.com/jobs/view/3981948985

Get StartedGet Started

Similar Jobs found by InJob.AI


Principal Software Engineer

Microsoft, Oslo, Oslo, Norway

Senior Software Engineer

reMarkable, Oslo, Oslo, Norway

Senior Software Developer - Stavanger

FRG Technology Consulting, Oslo, Oslo, Norway

Senior Software Developer - Stavanger

Jefferson Frank, Oslo, Oslo, Norway

Senior Software Developer - Stavanger

Nigel Frank International, Oslo, Oslo, Norway

Senior .NET Developer

Nigel Frank International, Oslo, Oslo, Norway

Senior Software Engineer

Autodesk, Oslo, Oslo, Norway

Scroll To Top
Get Started

Frequently asked Questions

Still have a question? Check out our FAQ section below.

FAQ Section

InJob searches for the best jobs, based on your profile and automatically generates customized cover letters for you. It saves a lot of hours in your job hunting time.

InJob creates your profile by having a conversation with you to learn about your skills and requirements. It also scans your resume to gather information about your experiences, skills, and achievements. This information is used to craft your profile in the backend which is further used to match jobs and gives you a personalized cover letter for each job opportunity.

InJob searches for job opportunities across a wide range of sources, including LinkedIn, Indeed, and hundreds of other job boards to find hidden gems. Its search is not limited, ensuring it covers as many potential job listings as possible. It also searches the career pages of individual companies that suit your target industry and location and you get applied there.

InJob is constantly active, scanning for fresh job opportunities every single minute. This ensures that you are the first person to apply to new job listings that align with your profile.

InJob plays matchmaker by comparing your profile and resume with job listings. Each job receives a score from 1-10, indicating how well you match with it.

In the upcoming update, Yes, this will be included and this will be the main differentiator. InJob will apply for jobs on your behalf. It will target top matches and craft custom cover letters for each job, ensuring your application stands out. InJob will also handle the application process, including visiting company websites and filling out forms.

In the upcoming update, Yes, InJob will provide an interactive dashboard that serves as mission control for your job search. It will display all the jobs InJob has applied for you and their current status. You will also be able to track which companies have shown interest in your profile and view the feedback they provided.

In an upcoming feature, Yes, InJob will collect all feedback, including positive and constructive feedback, and presents it to you. This will allow you to know exactly where you stand in the job market and provides insights on how to improve your skills.