Ruby On Rails Developer
Remote (Spain), onsite (Madrid), or mixed
We are a design and tech consultancy building digital products around civic engagement. We are hiring for Gobierto Contracts, which is our main focus right now: a tool to help public administrations control, plan and research about their contracting activity. Read El por qué de Gobierto Contratación: hacer más eficiente la contratación pública (spanish) about our motivation for building this tool — making public spending more efficient, nothing less!
During the last 12 months we’d have a pretty sweet customer discovery process, talking with tens of organizations to understand where their pains are. Now, a typical product presentation ends up with a “I want this now” (being “now” in the public administration land a process of many months… :D)
We have landed the first clients and have very exciting prospects for the coming months.
- open: source, data, knowledge
- balance: design your work schedule around your life, not the other way round
- communication: remote-first approach. Good & orderly written communication > meetings > real time interruptions
- quality: pride in process and results
- independence: responsibility for your own work, not micromanaging
Gobierto Contracts is a relatively young RoR project, so you’ll be a key contributor to shape the basis of the code and will take ownership of the project. One of Gobierto Contracts’ parts is a global search engine of tenders and contracts extracted from public sources. On top of this we are applying machine learning magic to do predictions, entity extraction from PDFs, and many other fun things.
You’ll also be contributing from time to time to Gobierto Transparency, our open source solution for setting transparency and accountability initiatives.
We work on Github using a git workflow with CI/CD, tests, different automations… Our workflow has been polished throughout a few years, so have automated many things (monitoring, error tracking, server setups & updates, deployments, various checks…). You can take a look at the Gobierto repo to see how we actually work.
Depending on your skills and interests, you may participate in:
- Data analysis work: using SQL, R, Python
- Systems work: servers setup, management, deploys. We use Ansible, some Docker
Day to day work
- Plan new features of Gobierto and existing applications, and contribute to new apps from scratch
- Implement defined features, manage your sprints, do sprint reviews
- Collaborate with other team members: provide feedback and do code reviews
- Improve and maintain existing code of production applications
Your first week
(in no particular order)
- Meet the team!
- Set up your tools, install Gobierto
- Browse our internal doc wiki to check out how we work, where to find things, etc.
- Browse around in our general issue tracker (Github)
- Get assigned initial issues to navigate around our development process: tests, deploy, code reviews…
Your first quarter
- Master all of our internal tools and processes
- You are tasked with planning a medium-sized feature in Gobierto that will take you several weeks to implement
- Propose the work plan and work with a designer and a front-end engineer to implement it
- Deploy code to staging, demo your work to the team/client, write documentation, polish it and merge it to master
Your first year
- Responsible of one or more apps/modules/big features
- Master Gobierto and have provided ideas to improve code and features
- Speak with clients autonomously if needed
- Do fluent code reviews
- Have made suggestions to improve our processes
- Have attended some conferences and proposed books to our book club
- Given internal talks about tech and non-tech things
- Have traveled with the rest of the team to one or more retreats (if global pandemics allow it)
This role is for you if…
- You want to work on meaningful projects around civic engagement, open data, participation and accountability
- Are looking for a stable job in a rewarding environment, with mission-driven projects, where you’ll spend your next few years
- Value a work environment which strives for excellence, from process to results, from design to code
- Enjoy working in a small team interested in understanding and contributing to our different systems (code, tools, processes)
- Have developed Ruby on Rails applications with a level of complexity similar to Gobierto and follow the Ruby on Rails ecosystem
- Value clean code with good abstractions and good communication skills both in the code and in the submitted PRs
- Understand and value testing and have been doing this systematically in recent times
- Prioritize understanding and analyzing problems to come up with effective solutions
- Are familiar with PostgreSQL, Git, Linux systems, the Unix shell
- Enjoy hacking in the Unix shell to automate tasks
- You are interested in open data, free software, data visualization
- You are fluent in written and spoken English
- Remote, mixed or onsite: some of us works regularly in our sunny Madrid office, others are fully remote, others mix. You are free to choose your place of work.
- Flexible schedule and hours: You design your work schedule around your life, not the other way round.
- Events: We get together a few time a years to work (when COVID allows), share and have fun
- Choose your hardware & software: Linux, Mac… your choice
- Education & Conferences stipend 1.200 € per year
- Indefinite contract
Up to 50.000 € depending on experience, with a 5-10% yearly bonus according to your performance and company results. Yearly salary revisions.
We are not the latest giga-funded startup with the mission to change the world of * (really, in those startups they are changing the world about anything!) so we won’t match top paying equivalent jobs in Spain.
We are building an independent, self-financed, sustainable company with the objective of being in business for many years working on projects we believe in and that we think make the world a better place, bit by bit. Projects that are respectful with people and don’t prioritize revenue over everything.
We are growing the business and aim to pay as best as we can. We look forward to growing with you: you’ll join a place that we are all defining together so it’s the best possible place to work we can imagine of: Interesting projects, intelligent people, with stimulating challenges, that provides good work-life balance and freedom to organize your schedule. You’ll contribute to delivering projects with more efficiency so we can grow faster.
- You take some time to write the application (two questions to show your motivations on the role)
- We look at the work you have done and some code samples (bonus points if it’s on open source repos)
- We do a short chat over the phone. Do a longer one if everything is fine
- If we want you to join us, we’ll make a salary proposal
- Paid project:
- we want to test the relationship before committing full time so we (you and us) are sure it’s a good fit. Changing jobs is stressful and time consuming and we don’t want to lose anybody’s time.
- we’ll propose a project of around 20-40 hours so you can combine it with your current job. We agree on the fee and you complete it when you can, without stress (2-3 weeks, but we are flexible and we can define an agreement based on personal circumstances)
- alternately, you can do this project in the office
- we pay you this project, no matter what
- If project is OK, everything is ready ;)
We'll only consider applications that take the time to answer all questions ;)