I would like to offer my Elixir development services free of charge in order to gain some experience with Elixir companies and individuals.
Who am I? My name is Daniel Jaouen and I have been working with Elixir and Phoenix for some time now. I am also the author of a few articles on LiveView:
Unfortunately, I am only available via written communication at the moment. However, I am open to other forms of written communication, namely GitHub/GitLab collaboration, if that helps at all.
Why? I doubt that paying a junior developer to work synchronously will be cheaper.
What is being offered here is a type of Async work.
I work Asynchronously at my current company and we use email for everything without the expectation of an immediate reply, otherwise it would be synchronous work.
I absolutely adore async work, it makes things a lot more efficient and gives freedom about your day ant it’s something I don’t want to let go. Also, I’d love to remind everyone that most of open source development (at least not at the biggest stage) is done async.
That said, especially for unclear understanding, disagreements & discussions sync communication is usually preferred/better as the rapid exchange of ideas is needed there and the async turn around time can be hard. For hard conversations, non verbal cues help.
So, I like to practice a combination of both with a default to async
On the main topic though, for someone working for free this should certainly work/be worth it - much like it is in Open Source. It won’t work though if a company is a sync-heavy company as the clash of cultures will be too stark.
I agree, async work is very convenient for the developer.
Sadly in my experience the companies I worked at were too small to be able to organize such a process efficiently, I usually end up personally going to the product owner to either specify business requirements or make them, this happens a lot if the person that makes requirements is not a technical person. Of course, once the core part is done, then it becomes much easier to add new features.
That’s why hybrid solutions are always best. You work async by default and schedule a meeting to talk with a cup of coffee/tea when needed. Many company owners may be scared that hearing async only as for the it looks like lose of control of the work process. Definitely the best hybrid option is iteration-based.
You take some tasks for a 1-2 week iteration, read them, ask questions and then you have a “free” (from boss) week and the boss feel a control, because he would have a “batch” idea how things would look like in next iteration(s). If in your agreement the payment is for iteration you have won the life as you have an unlimited control of your overtime. For boss it’s ok as he is agrees paying for a set of features.
Keep in mind that your boss is also human, he have business and takes a care of this as same as you take care of your carrier. Boss also could have family/friends and prefers to work less. All you need to do is to show the boss the benefits for bots sides without a worry of losing control.
btw. The way open-source works (fully async) is by definition not possible in a stable business. Everyone investing money do all the best to make everything goes well. It’s less control of project, but more control of invested money. The more money is invested the bigger worries are. Demanding or wishing some significant change is selfish. Following the rule if it works don't change it which works as long as you have a strong argument and complete plan to do so (like mentioned iterations above).
Makes sense, but you should try and stay away from the term hybrid. Some people may assume that you are talking about in-office/work-from-home. As a side note I also prefer to make a distinction between remote work and work-from-home. Work from home is a fork of remote work, where the workplace is artificially constrained to one small geographic area.