PLAYBOOK

This Is Our Path To Extraordinary Partnerships

We create long lasting partnerships through exceptional services with organizations of all sizes.

Ready to get to know us?

Introduction

We strive to build long-lasting partnerships by providing exceptional services to organizations of all sizes.
This playbook is our path to creating these partnerships.

We know that starting a new technology project can be far from easy, even if it’s not your first time. But don’t worry, that’s what we’re here for. This is our Playbook – meant to highlight who we are, what we do, and how we work. As always, if you have any other questions or want to get in touch, feel free to reach out at hello@loopstudio.dev

Loop Studio was founded in 2014 as a team of 4 people in Uruguay focused on providing high-quality technology services to companies large and small. Today, we are a team of 28 and growing, with the same mission; with more than 5 years working for enterprises and startups alike, we pride ourselves on our constant immersion in the latest technologies to help our clients build exceptional web and mobile products. This Playbook details how we design and build software, manage projects, and run our business in general. It’s a living document and continues to evolve as we do.

Mission & Vision

M: Extraordinary services for extraordinary customers.

We believe in quality over quantity, and are always focused on building long-lasting connections, between ourselves and our clients, and our clients and their customers.

V: Become a champion of quality services in LATAM.

Values

We are constantly reviewing and improving our work processes to deliver the best results possible.

Trust

More than just service providers.

We strive to become deeply involved with our clients and their projects, building long-lasting partnerships based on transparency and honesty.

Quality

Further than product.

We pay attention to every detail to make sure our clients have the best working experience at all times.

Fulfillment

We seek the utmost potential.

We look to be a home for all individuals who want to grow professionally and personally, and aim to support a healthy work-life balance.

Continuous Improvement

We always work to exceed our clients expectations.

We are constantly reviewing and improving our work processes to deliver the best results possible.

Ownership & Commitment

We strive to be exceptional in all regards.

We are highly committed to each project we bring on, taking ownership and initiative to ensure that success is our responsibility. We aim to be proactive and stay one step ahead of the curve, so we are better prepared for what lurks around the corner.

Values

We are constantly reviewing and improving our work processes to deliver the best results possible.

Trust

More than just service providers.

We strive to become deeply involved with our clients and their projects, building long-lasting partnerships based on transparency and honesty.

Quality

Further than product.

We pay attention to every detail to make sure our clients have the best working experience at all times.

Fulfillment

We seek the utmost potential.

We look to be a home for all individuals who want to grow professionally and personally, and aim to support a healthy work-life balance.

Continuous Improvement

We always work to exceed our clients expectations.

We are constantly reviewing and improving our work processes to deliver the best results possible.

Ownership & Commitment

We strive to be exceptional in all regards.

We are highly committed to each project we bring on, taking ownership and initiative to ensure that success is our responsibility. We aim to be proactive and stay one step ahead of the curve, so we are better prepared for what lurks around the corner.

Services

Web & Mobile development

Our team works hard to build beautiful, functional, and intuitive web & mobile applications. We love bringing products to life.

Design

We design, validate & test before development to improve efficiency and reduce risk. Implementing design allows us to develop specific solutions to fit our client’s needs.

Consulting

From idea stage to project plan, we work to research, define, and validate your product. We guide you through the path to achieve success.

Managed Services

Upgrade your team with our experts. We can work alongside to provide extra workforce & empower added knowledge.

Web & Mobile development

Our team works hard to build beautiful, functional, and intuitive web & mobile applications. We love bringing products to life.

Design

We design, validate & test before development to improve efficiency and reduce risk. Implementing design allows us to develop specific solutions to fit our client’s needs.

Consulting

From idea stage to project plan, we work to research, define, and validate your product. We guide you through the path to achieve success.

Managed Services

Upgrade your team with our experts. We can work alongside to provide extra workforce & empower added knowledge.

Design Process

Understand & Define

We work hard to research the problem you are focused on solving, and endeavor to fully understand the customer you wish to target.

In order to build a project, we know that ideas must be clearly articulated and discussed, so that all team members are on the same page about the product and deliverables. Next, we brainstorm possible solutions by assessing use case scenarios and illustration maps of the paths users can take to achieve the desired outcome. From there, we elaborate on a visual guide that represents the skeletal framework of a software product. In this step we use tools such as Balsamiq that allow us to create a rapid sketches of the project focusing on structure, functionality and content.
At this stage we produce client deliverables in the form of a sitemap, workflow and wireframe to validate and discuss the solution. Wireframes are meant to fail fast and affordably, so they can be easily modified to reach expectations.

Design & Prototype

Here is where the interface adds its look and personality.

Now we work to transform our wireframes into high fidelity prototypes. By blending graphic ingredients -colors, typography, iconography, photography and movement- we compose elegance and reinforce the brand’s values.
Here we validate the entire workflow, colors, logo, images and transitions, as we actively engage feedback from the client and potential users. For designing & prototyping we use design tools including Sketch, Adobe Photoshop, Adobe Illustrator / Adobe Xd, and Zeplin & Sketch Cloud to share the work with the client.
At this stage we deliver mockups that simulate the product experience and provide a live look and feel for the final user experience.

Adjust

We will continue exploring alternatives until clients & users are fully satisfied.

We are committed to deliver the best possible product and our process emphasizes continual progress until we exceed our clients’ expectations. Once everything is ready to rocket fuel we proceed to develop.

Development Process

Once we ensure that we have a clear vision of the product we need to build, we start the development process. We know that in the world of technology it is important to embrace change in order to succeed, so we became masters of a methodology that allows us to test, observe and adapt the solution as much as we need to. But we’ll talk more about that in a moment.

Your Team

Your team will be carefully assembled so that they balance each others’ skillsets, creating a working unit that covers all the bases necessary to achieve the goals we set before starting the development.
Our teams can manage themselves. However, you will be assigned a Project Manager to make it easier for you to voice any concerns and to ensure the broader team remains organized and on track. You will be assigned a cross-functional team of experienced developers that have mastered the tools and practices that as a company we are always ensuring are appropriate and up to date. Your team members are trained on identifying requirements, creating estimates and priorities, managing technical risks and resolution, and running automated testing and performance controls… you can remain calm that your project is in the right hands.

Methodology

There are many different methodologies to consider when building a software product. We will suggest the one that is the most appropriate given your project characteristics, though you should know in advance that it’s very likely we’ll end up going for an agile methodology.

Agile Methodology

An agile methodology is one that was ideated from the manifesto of Agile Software Development and the Principles of Agile Software Development.
The movement started when someone realized that software industry was becoming something quite different than any other industry. Users of technology are fidgety, picky, and usually don’t know what they want or change their minds quickly…So technologists learned to use a process that is flexible enough to accompany this lack of predictability, focused on building prototypes quickly, testing with the users, and adapting based on the insights collected. The cycle repeats as much is as needed, resulting in a product that solves the users needs in the best way possible while remaining competitive in the market. Agile methodologies are usually based on empiricism, meaning they promote acting on what is known and backed by evidence, not solely by instinct.

There are many agile methodologies, but in most of the projects where we are building new features we tend to use Scrum.

Your Team

Your team will be carefully assembled so that they balance each others’ skillsets, creating a working unit that covers all the bases necessary to achieve the goals we set before starting the development.
Our teams can manage themselves. However, you will be assigned a Project Manager to make it easier for you to voice any concerns and to ensure the broader team remains organized and on track. You will be assigned a cross-functional team of experienced developers that have mastered the tools and practices that as a company we are always ensuring are appropriate and up to date. Your team members are trained on identifying requirements, creating estimates and priorities, managing technical risks and resolution, and running automated testing and performance controls… you can remain calm that your project is in the right hands.

Methodology

There are many different methodologies to consider when building a software product. We will suggest the one that is the most appropriate given your project characteristics, though you should know in advance that it’s very likely we’ll end up going for an agile methodology.

Agile Methodology

An agile methodology is one that was ideated from the manifesto of Agile Software Development and the Principles of Agile Software Development.
The movement started when someone realized that software industry was becoming something quite different than any other industry. Users of technology are fidgety, picky, and usually don’t know what they want or change their minds quickly…So technologists learned to use a process that is flexible enough to accompany this lack of predictability, focused on building prototypes quickly, testing with the users, and adapting based on the insights collected. The cycle repeats as much is as needed, resulting in a product that solves the users needs in the best way possible while remaining competitive in the market. Agile methodologies are usually based on empiricism, meaning they promote acting on what is known and backed by evidence, not solely by instinct.

There are many agile methodologies, but in most of the projects where we are building new features we tend to use Scrum.

Scrum and why we use it

Scrum is actually a lightweight framework, which means that it defines some key aspects about the development process to establish a solid base, but leaves plenty of room for adaptation according to the unique needs of a given project. Scrum is very simple to understand. Actually, The Scrum Guide is only a couple pages long. We suggest you read it eventually. However, here is a summary.

Scrum Summary

Scrum suggests we split development into timeboxed iterations, called Sprints, usually one or two weeks long.
Before a Sprint starts, all team members convene for the Sprint Planning, where they define the work they will be doing during the Sprint. When the Sprint comes to an end, they get together for the Sprint Review, where they show the product owner the work they completed. This goes on to repeat as long as is needed. The good thing is that by the end of each iteration you have a shippable product, which can be released to gather insights to act on during next iterations.

Scrum and why we use it

Scrum is actually a lightweight framework, which means that it defines some key aspects about the development process to establish a solid base, but leaves plenty of room for adaptation according to the unique needs of a given project. Scrum is very simple to understand. Actually, The Scrum Guide is only a couple pages long. We suggest you read it eventually. However, here is a summary.

Scrum Summary

Scrum suggests we split development into timeboxed iterations, called Sprints, usually one or two weeks long.
Before a Sprint starts, all team members convene for the Sprint Planning, where they define the work they will be doing during the Sprint. When the Sprint comes to an end, they get together for the Sprint Review, where they show the product owner the work they completed. This goes on to repeat as long as is needed. The good thing is that by the end of each iteration you have a shippable product, which can be released to gather insights to act on during next iterations.

Scrum Roles

Product Owner

That’s you! Or whomever you put in charge to make the product-related decisions.
The Product Owner is in charge of the Product Backlog, defining what needs to be built and when. It doesn’t mean that you have to have all the answers, we will help as much as you need, but you do have the final say and responsibility of putting the product in the hands of the users.

Scrum Master

The Scrum Master is a support role that helps the team organize itself and remove any obstacles to ensure they deliver a high-quality product. The Scrum Master will provide the team feedback on how it is functioning and suggest ways to improve it.

Development Team

Team of Professionals in charge of delivering a potentially releasable increment of the product at the end of each Sprint. The Team is self-organized and cross-functional, meaning it is structured and empowered by the organization to organize and manage their own work.

Scrum Ceremonies

Scrum defines 4 types of events that take place for each Sprint:

1. Sprint Planning

Here the team determines the Sprint Backlog, composed of the Product Backlog items they will work on during the sprint. This event typically involves the entire team. The product owner proposes a sprint goal and identifies the items needed to achieve this goal. The development members determine how many of the product backlog items they forecast they will be able to complete. The scrum master typically facilitates this session to ensure that the discussion is effective and that there is an agreement on the path forward.

2. Daily Scrum Meeting

This 5-minute in-person meeting takes place daily, in person, among the internal development team (the client doesn’t need to attend). Each team member speaks to what they accomplished the prior day, and details any obstacles blocking them from moving forward with their work. The point of these meetings is to synchronize the team, collaborate on resolving any blockages, and forecast the outcomes of the Sprint Goal.

3. Sprint Review

During the Sprint Review the development team reviews the planned Sprint Backlog performing a live demonstration of the features developed. The team gathers feedback from the Product Owner and discusses other concerns or aspects of the project.

4. Sprint Retrospective

In the Sprint Retrospective the development team identifies the things they are doing well and those they are impeding them to achieve their best performance. They define actions to improve the process and ensure that everyone feels comfortable, aligned to the team goals and performance as expected. Usually, only the development team members and the Scrum Masters participate, but you can ask to participate too.

Scrum Artifacts

User Story

A User Story represents a feature of the system, written from an end user’s perspective. The development team estimates the User Story, thinking about the effort required to build a given feature, relative to other User Stories. For example, a User Story that has twice the estimation of other User Story is likely to take twice the effort to be developed. A User Story needs to be small, simple, concise and easy to understand for the developers to be able to properly estimate it and complete it in short order.

A User Story has this format:

“As a , I want to so that ”. For example: “As a store customer I should be able to filter the products available in my size so I don’t waste time looking at products that won’t fit me.”

Writing User Stories in a way that is concise, valuable, and easy to understand is not as easy as it sounds, but fortunately the team is trained to help you rewrite them and split big User Stories, often called Epics, into smaller, easier to deliver, User Stories.

Product Backlog

The Product Backlog is the set of User Stories, bugs, changes, improvements, and other tasks that might add value to the user. It’s owned by the Product Owner, whose responsibility is to ensure the Backlog is always evolving as needed and prioritized.

Sprint Backlog

The Sprint Backlog is a subset of the Product Backlog, containing those User Stories to be worked on the Sprint.

Product Backlog

The Product Backlog is the set of User Stories, bugs, changes, improvements, and other tasks that might add value to the user. It’s owned by the Product Owner, whose responsibility is to ensure the Backlog is always evolving as needed and prioritized.

Sprint Backlog

The Sprint Backlog is a subset of the Product Backlog, containing those User Stories to be worked on the Sprint.

What We Expect From You

Simply put, we don’t care about your pedigree, degree, or long list of successes. We don’t expect you to be experienced in technology, business, or especially Agile Methodologies. We just want to work with people that are passionate about their ideas. We say this because if you are passionate about your idea you will naturally do the tasks that the role involves… you will want to launch early, you will put the product into the hands of the users and you will let user data dictate your next decisions. You will also be available for the team to ask questions and you will most likely test the product yourself to give us your own feedback.

Technology Stack

Before starting the development, we analyze the project characteristics with the goal of selecting the appropriate language and framework. These decisions vary based on the type of software, target users, desired scale, time, budget, etc., and ultimately lead to the architecture plan.
While we understand each project is unique, we usually suggest starting with an architecture that consists of a back-end built in Ruby on Rails and a front-end built in React if we decide on a web application and/or React Native in case of a mobile application.

Why are these our go-to technologies?

Because we value a quick go-to-market and they allow for just that.
Using Ruby on Rails for the back end helps us build an MVP faster than we could with any other language, so that we can test with users as soon as possible, while maintaining our high quality standards.

React is a JS library that quickly gained popularity among developers of web application because of its declarative way to build user interfaces and its concepts of reusable and composable components. React Native is a framework that allows us to build native apps using React.

Quality Assurance

We believe Quality is better than Quantity. Quality is built in the way we work. We do it well or we don’t do it at all. It’s not that we are stubborn, we have years of experience and we know the other way does not work in the long term. We are trained to develop high-quality products, which for us means defect-free, maintainable, secure, performing, and usable. And we do this naturally that it allows us to go faster than if we took an alternate route.
We are continuously polishing and adopting new techniques that we apply on a consistent basis to maintain the quality of our products, including:

Code Standards

We work hard to ensure every project is built over the appropriate design and architectural patterns and that our codebases follow the corresponding technology standards, conventions and best practices. We also integrate tools on our codebases to enforce all the above.

Code Review

No line of code goes to production without peer-review. We polish our code review process and tools so that we can make sure the code we integrate is maintainable, and that it improves the overall quality of the codebase. We also use Code Review as a way to spread knowledge and strong coding practices among developers and across projects. All developers in the company can suggest and contribute to the quality assurance of every project.

Code Versioning

We store the codebase in the Cloud to keep it secure and backed-up using a tool called Github. We control and track each change introduced to the code base and keep a rigorous history of releases so we know what has/has not been submitted to production and so we can jump between versions easily. We are very strict and organized regarding the codebase because we don’t like surprises (and neither should you).

Continuous Integration

We enforce the use of continuous integration tools like Codeship and CircleCI in each repository. These tools require that all tests and code analyzers pass inspections prior to integrating new code. This is key to making sure that new changes in the code do not break previous features and that the code standards of our company are met at all times.

Continuous Deployment

We deliver increments of the product we are building very frequently, at the end of each Sprint, so we need tools that let us ship the new features to you and your final users with almost no effort.

Automated Testing

Automated tests allow us to ensure the program works as expected without having to manually go through the app ourselves. They are meant to catch bugs and regression errors before they get to the final user. We are strong believers in the importance of writing automated tests as part of the development process. Every feature that we build is written along with its automated tests, and we require our developers a minimum of 90% test coverage in the server side. We are very strict about this policy because we know that automated tests are necessary to build high-quality software and to be able to maintain the development velocity as the app grows and becomes more complex.

Testing Environments

As the Product Owner you will have your own testing environment, called Staging, to test all the features that we build before you decide to release them to production when it the product is available to all users. This testing environment also allows us to catch any last bugs before they hit the final users.

Monitoring Tools

We integrate our codebases with sophisticated tools like Sentry which automatically collect and notify us of incidents to address quickly. We also integrate performance monitoring tools like New Relic to provide deeper insights such as memory consumption, database usage and potentially inefficient queries to ensure system availability and optimal performance at all times.

Performance Control

If your product demands it, we will build a load test plan to stress the system under pressure to ensure it behaves as expected as user activity scales.

Design Reviews

Our designers regularly rexamine and advance product UI as it is built, ensuring that the live application matches High Fidelity Mockups and adjusting anything that just doesn’t feel right.

Sprint 0

We dedicate every first sprint iteration to setting a solid project foundation. During Sprint 0, we leverage detailed checklists to foster initial alignment across our team, best preparing us to code well and ship fast.

Team Structure

Our team is composed of over 25 brilliant engineers, developers, designers, project managers and Scrum masters that are trained to build high-quality software solutions.

Office Space and Remote Work

We believe that working in the same office promotes communication and collaboration and makes it easier for all of us to be aligned with our collective values and goals. However, we know flexibility is important so we trust our team members to work flexible hours and remotely when they need it.

Team Structure

Developers & Designers can belong to:

Our team is composed of over 25 brilliant engineers, developers, designers, project managers and Scrum masters that are trained to build high-quality software solutions.

Office Space and Remote Work

We believe that working in the same office promotes communication and collaboration and makes it easier for all of us to be aligned with our collective values and goals. However, we know flexibility is important so we trust our team members to work flexible hours and remotely when they need it.

Team Structure

Developers & Designers can belong to:

Client projects

Team Members assigned to client projects are dedicated to that project as their main priority.

Client projects

Team Members assigned to client projects are dedicated to that project as their main priority.

Tech Councils

At the same time, team members can participate in what we call Tech Councils. Each technology in the company has its own Tech Council, where the developers of that technology convene monthly, to set and plan team goals. This allows us to have our internal repositories, remain up to date in our knowledge and tools, and standardize our processes.

Team Training

We know it is our responsibility to constantly learn to ensure we can produce the best result for our clients’ projects. That’s one of the main reasons why continuous improvement is one of our core principles, and we have our strategies to achieve that.

Loop Talks and Workshops

Our developers are encouraged to share the technical challenges they faced and overcame in their projects, multiplying the knowledge in the company and fostering curiosity and motivation. Sometimes we also host meetups welcoming developers from other companies because collaboration and exchange of ideas are important to us.

Training Plans

We carefully develop training plans for new developers at our company. Our trainings cover not only the programming languages, but also the code versioning tools, deployment process, Scrum methodology and more. We ensure our developers are ready and experienced enough before assigning them to a client project. Our Senior developers train soft skills as mentors to the Junior developers. Moreover, we have courses at online academies to learn new languages and tools for the developers that are looking to expand their technology stack.

Communication

We rely on transparent and consistent communication as the key to our business relationships.

For an effective communication we use a daily chat, video conferences, emails and project management apps. In particular:

We rely on transparent and consistent communication as the key to our business relationships.

For an effective communication we use a daily chat, video conferences, emails and project management apps. In particular:

1. Slack for daily chat
2. Google hangouts or Zoom for video conferencing
3. Jira for Project Management

All of these tools are immediate to set up and extremely easy to use but we will be evacuating any doubts you have anytime.

We pride ourselves in our accessibility, and will be available on a daily basis outside of scheduled calls and meetings.

We encourage straightforward, consistent and immediate feedback. We believe it is the means to achieve one of our core values: Continuous Improvement. The Development Team will let you know if you there is anything you can do to make us work more efficiently and we expect the same from you. The Operations team will also be available to you anytime if you feel like talking about anything else.

1. Slack for daily chat
2. Google hangouts or Zoom for video conferencing
3. Jira for Project Management

All of these tools are immediate to set up and extremely easy to use but we will be evacuating any doubts you have anytime.

We pride ourselves in our accessibility, and will be available on a daily basis outside of scheduled calls and meetings.

We encourage straightforward, consistent and immediate feedback. We believe it is the means to achieve one of our core values: Continuous Improvement. The Development Team will let you know if you there is anything you can do to make us work more efficiently and we expect the same from you. The Operations team will also be available to you anytime if you feel like talking about anything else.

Contact

Are you ready to rocket fuel your product?