Skip to content

Instantly share code, notes, and snippets.

@danielcompton danielcompton/deps job.md Secret
Last active Apr 15, 2019

Embed
What would you like to do?

Part time contractor

I am looking for a long-term, part-time contractor to help maintain Deps, a Clojure web application.

The amount of work available will vary based on customer demand and your availability. Initially it is likely to be ~5 hours/week. This job will be very flexible in when/how you do it, there is very little that is urgent, and I can do the urgent things if you're not available.

The application uses the Yada web framework and uses Stimulus for sprinkles of frontend JavaScript/TypeScript. Most of the application is server-side rendered.

I'm able to work with newer Clojure developers if they have relevant experience in other languages, and would like to learn more Clojure.

Responsibilities:

  • Adding small features (e.g. resend user invite, upgrade/downgrade billing plan)
  • Fixing security issues identified through bug bounty programs/security reports
  • Improving UI polish and features
  • Building a backend admin interface for managing user accounts
  • Improving integration with Stripe
  • Adding integration tests for new features, and some existing features
  • Testing and upgrading dependencies
  • Adding onboarding (either integrating with another SaaS product, or building yourself)

Bonus responsibilities:

If you have skills and experience with these tasks, then there would be some of this work available, but it's not a big problem if you don't:

  • Writing user-facing documentation
  • Improving web application copy
  • Handling first level customer support (there is not much of this, not crucial)
  • Improving the marketing website design
  • Adding comparison pages, feature pages, and other SaaS marketing collateral

Operations:

The application runs in Google Cloud, but I anticipate most of the work will be focused on development, rather than operations or devops work. I'm able to take the pager and handle operations and production debugging (production issues are very rare).

Ideal applicant:

  • Reasonable English (doesn't have to be perfect)
  • Has used Clojure before
  • Has done backend web development before (not necessarily in Clojure, but in Clojure is a plus)
  • Reasonable CSS design skills (doesn't have to be top notch)
  • Security conscious, has an understanding of web application security and can write secure code the first time.
  • Any time zone/location
  • Able to work in a self-directed manner, but knows when to pause and ask for help/directions

Ideal experience:

If you don't have some or all of these, that's totally ok, but if you do be sure to mention them!

  • Working remotely
  • Using/deploying to Maven repositories
  • Contributing to the Clojars open source project
  • Yada web framework
  • Clojure web app programming with Ring/Compojure/Bidi
  • The Component dependency injection library
  • Postgres
  • HoneySQL and/or HugSQL
  • Experience working in a REPL driven development style

Workflow:

The likely workflow would be:

  1. I create GitHub tickets and assign them to you, describing what needs to happen, and some possible approaches.
  2. You spend some time thinking about how you will solve the problem. Then open up a PR and start working on the feature/fix, describing your approach and an estimate of complexity/time. We can also chat on Slack, but this isn't mandatory.
  3. Once you are happy with your solution, or you want a second opinion, ask for a review.
  4. I'll review the code, and perhaps offer suggestions
  5. Once we're both happy with the solution, I will merge and deploy to production.

Applying

Send an email to daniel+jobs@deps.co with the subject line "Deps contractor". Include in it:

  • A brief cover letter explaining why you're a good fit for this position
  • A brief CV
  • If you have any, a link to some sample Clojure code you're written
  • Your hourly contracting rate

Application Process

  • Once you've sent an application, I'll take a look. If it seems like it could be a good fit, I'll schedule a quick call (30 minutes) with you to discuss the position and your background more.
  • I'll then send over a small Clojure work sample test (1-2 hours). This will be graded against a standardised rubric.

In all cases, whether you were successful or not, you will get a response from me. I know how annoying it is to send applications into the void.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.