Connecting Junior Developers with the industry

Craft Academy teach people web- and mobile development. During an intensive, 12-week long bootcamp, our learners go through an extensive challenge based curriculum with one goal in sight: to build a skills set that will allow them to enter the job market as junior developers.

Upon graduation, our learners start “hunting” for jobs — a process that will take them from CV and cover letter preparation to interviews, meetings, tech tests and so on. Job hunting is a hard and time consuming process.

Craft Academy Labs is an initiative to bring in real customer work to bootcamp alumni in the period after graduation and their first job as a software developer.

We follow some simple principles that should make hiring our team very straight forward:

  1. We follow the agile approach to software development to ensure we always have our priorities straight.
  2. We focus on communication with our clients to ensure we deliver the right thing at the right time.
  3. We don’t charge per hour nor do we offer fixed price per project. We charge for complexity of the solutions we deliver.

AGILE APPROACH

Every Craft Academy Labs project starts with an Inception meeting that is followed by a Design Sprint. The most important participant in those activities is the client.

The Inception meeting takes generally 4–6 h while the Design Sprint can take somewhere between 2 to 5days, depending on the scope and size of the project.

These are the only two events that we charge for using a fixed price of 7 500 SEK (900 USD) per day.

During the Design Sprint and the Sprint planning meetings we work actively with filling the backlog of the project with feature requests. The backlog is constantly rearranged according to client priorities and then assigned to developers to work on.

COMMUNICATION

Effective communication between all stakeholders is a fundamental requirement in successful projects. Our workflow ensures that communication between Project owners, End Users, Developers, Designers, etc, runs smoothly and is a guarantee for a successful relationship.

We work closely with all stakeholders to assess what features should be developed and shipped and what the complexity of those features are. We also focus on the business value each feature adds to the system. This allows us to keep everybody in the loop and is a win-win situation for all parties.

CHARGE FOR COMPLEXITY

The biggest difference between our pricing strategy and other software developers is that we charge our clients for complexity of the features we deliver and that the complexity is defined in close cooperation with the client.

We want to make sure that our projects deliver value for our clients and, unlike many other organisations, we do not charge out clients for our learning time.

During design sprint and the sprint planning meetings we work actively with filling the backlog of the project with feature requests. The backlog is constantly rearranged according to clients priorities and assigned to developers to work on.

An example is as follows:

Let’s say that our team is challenged with developing a feature that will allow users to sign legal documents using the Swedish electronic ID system BankID. First time around, our developers need to read through a lot of the documentation for the BankID API, do a spike (a simple program to explore potential solutions) learn how to test it and so on. That is what we refer to as the learning process.

We can not, in good faith, charge our client for that.

What we DO charge for is what comes next — the actual implementation of the BankID features in the system we are developing. All according to a predefined complexity assessment agreed upon beforehand.

Once the feature is implemented and accepted by the client, we ship it to the production server and move on. If there are any bugs in the implementation that has not been exposed by our automated tests, we fix those and redeploy the feature.

PRICE STRUCTURE

-”So, sounds good, but still… How much will you charge me?”, you ask.

Well, we assess the complexity of each feature into three categories.

  • Low complexity — 1 point
  • Medium complexity — 2 points
  • High complexity — 3 points

If a feature is deemed too complex for 3 points, it is split up into separate stories and assessed individually.

Each complexity point is charged with 2 875 SEK (345 USD) and includes project management, development, testing, staging, client demo, deployment and (hopefully not) bugfixes.

The BankID implementation mentioned above would probably be split up in at least two stories (one setting up the BankID in the system and the other one for the document signing interface) totalling perhaps 5 complexity points altogether.

We believe that this approach reduces the risk of unforeseen costs and lead times and makes partnering with us safe, leading to long standing, mutually beneficial relationships.

If you are looking for a team of developers to support you in developing your product or service, reach out to us and let’s make things happen.