Full Stack Developer - Ongoing

Jumpseller

Location
Portugal
Job Type
full-time
Salary
Unknown
Posted
August 20, 2025

Job Description

Job description

Jumpseller is a SaaS solution for small business to manage their online business. We focus on making e-commerce easier for everyone, so businesses can focus on what they do best: building and selling their products. Today, merchants use the Jumpseller platform to manage every aspect of their online business — from products to orders to customers, selling with an online store, on mobile, on social networks and through different e-commerce channels.

At Jumpseller you will find a startup environment in which your contributions matter and you are enabled to grow professionally. We have 2 offices, one in Porto, Portugal, and another in Santiago, Chile, and our working culture is international. We all work fully remote.

The role

We are looking for a Software Engineer to join our growing team. We look for skilled & dedicated people who share our passion for building a product that millions of people use.

You will

  • Work in an informal environment, for a global market;

  • Strive to write clean, modular, flawless and scalable code responsible to handle millions of records;

  • Design new features from ground-up, from a given set of specs;

  • Build automated tests for your code while help improving and maintaining our current test set;

  • Be in contact with our Customer Support Team, resolving technical issues and understand how to improve our service;

  • Take responsibility, autonomy and ownership of your work.

Your Day

Some projects and activities that we have been recently working on to give you a sense of what you’ll be doing day-to-day.

  • Work along a team of developers, designers and product owners to build a Multi-location Inventory;

  • Help complete one of our recurrent Meta Security Assessments;

  • Create an Import / Export tool, in CSV, to quickly manage stock;

  • Implement a bar code scan in React Native, for our Mobile App;

  • Work closely with our Design Team and set up the infrastructure for our UI Design System;

  • Spend a day working directly with our client-based and Support Team, triaging and fixing production issues;

  • Model in UML a new database structure for our upcoming Gift Cards feature.


The Recruitment Process

  • We will review all the CVs & Cover Letters received;

  • First interviews - lasting 30 minutes. This is an introductory meeting with our People Department, so that you get to know Jumpseller and present yourself;

  • Top candidates will be invited to participate in a Case Study, which will be done at their own pace and should not take over 4hs. Not more than 4 to 6 invitations will be sent. 

  • Finally, a last interview - lasting 45 to 60 minutes - to review the resolution Case Study & focus deeper on your main professional project/achievement;

  • We expect to send you an offer by July.

All candidates will be notified from us once the process is concluded. Those on the last interview stage can request brief feedback about their application.

Job requirements

You are

  • A bachelor/master in Informatics (or related);

  • Proven professional experience in OO programming and web development;

  • Attentive to details, delivering quality code which is maintainable, efficient and reliable;

  • Experienced in MySQL, or other relational databases;

  • Familiar with version-control and automated testing tools;

  • Used to work in JSON/XML/CSV formats and have no issues with HTML/CSS;

  • Experienced in Ruby or Ruby and Rails (the right candidate will be considered without this experience);

  • Good in English communication and teamwork.

🎯 Who is this job for?

This role is a great fit for a Full Stack Developer with solid experience in object-oriented programming, web development, and relational databases (MySQL), ideally with Ruby on Rails. The position involves designing and implementing new features, building scalable code, creating automated tests, and collaborating with customer support to resolve issues. It suits someone who values clean, maintainable code, enjoys working in a startup-like environment, and wants to contribute to a global SaaS e-commerce platform.

πŸ’¬ Potential Interview Questions

  1. How would you model multi-location inventory in a relational schema and keep counts consistent under concurrency?
    Create stock_levels(product_id, location_id, quantity, lock_version) with a unique composite index; update with transactions and optimistic locking or SELECT … FOR UPDATE to prevent race conditions.

  2. How do you implement a memory-safe CSV import/export for millions of rows in Rails?
    Stream with CSV.foreach/Enumerator and send_data, validate in batches, and run imports via ActiveJob/Sidekiq with upserts (insert_all/ON DUPLICATE KEY UPDATE) and idempotency keys.

  3. What steps do you take to optimize a slow MySQL query surfaced by the slow query log?
    Inspect EXPLAIN, add/adjust composite indexes to match predicates/sort, reduce SELECTed columns, rewrite N+1 joins, and paginate with LIMIT … OFFSET or keyset pagination.

  4. How would you design an idempotent API for stock adjustments and order fulfillment?
    Require an Idempotency-Key and persist a unique request hash; protect with a unique DB constraint and return the stored result on retry to avoid double updates.

  5. How do you secure third-party webhooks (e.g., Meta) and handle retries?
    Verify HMAC signatures with a shared secret, enforce timestamps and replay protection, respond 2xx quickly, and enqueue async processing with exponential backoff.

  6. What are your go-to Rails techniques to avoid N+1 and heavy serialization in JSON/XML/CSV responses?
    Use includes/preload, select only needed fields, cache computed attributes, and serialize with Jbuilder/AM::Serializers using sparse fieldsets.

  7. How would you add barcode scanning to a React Native app and make it robust offline?
    Use expo-barcode-scanner or react-native-vision-camera, debounce scans, validate formats (EAN/UPC), queue mutations locally with a persisted store, and sync when connectivity returns.

  8. How do you structure automated tests for a feature like Gift Cards (create, redeem, expire)?
    RSpec unit tests for state machine/domain rules, request specs for REST endpoints, background job specs for expirations, and contract tests for integrations; seed edge cases (partial redemption, currency).

  9. What Rails security practices do you enforce by default?
    Strong Parameters and model validations, CSRF protection, output escaping, encrypted credentials, parameter filtering for PII, rate limiting, and CSP headers to reduce XSS/CSP bypass risk.

  10. How would you set up and document a UI Design System for the SaaS admin and storefronts?
    Establish tokens (color/spacing/typography) and components in Storybook, ship versioned packages, enforce accessibility (WCAG) and visual regression tests, and publish usage guidelines in the repo wiki.

πŸ“‹ Job Summary

Jumpseller is hiring a Full Stack Developer (remote, based in Portugal) to build scalable e-commerce features for a global SaaS platform used by small businesses. You’ll work with Ruby on Rails, MySQL, and front-end tech including React Native, contributing to projects like inventory systems, CSV import/export tools, and mobile barcode scanning. Ideal for developers with OO programming experience, attention to detail, and strong collaboration skills. Enjoy a fully remote, international startup environment where your contributions have real impact.

Required Skills

React Node.js TypeScript Ruby

Related jobs

Boston, United States

Full Stack Engineer

Jellyfish

Full-time
Mumbai, India

Fullstack Developer

Ovyo

Full-time