As a result, I've moved my development to a cloud environment so that it would lift some computing load. This, however, is not possible for graphical demanding programs such as Figma.
In the past year, I repeatedly had to work from home to compensate for my machine's shortcomings with my desktop. The company has now warned me not to work from home again.
* What is the proper way to ask for a work-machine? * What is the best course of action if the request is rejected again? * Does it make sense to take out a loan to buy one myself?
Assuming you're working for quite a small company: refuse to use your own machine. Make it clear that using it is not something you are comfortable with. Use the crappier machine but complain loudly every time you're suffering an issue with it. "Oh this runs out of memory when I try to do this", "this takes too long to load"... Etc. in your chats as it happens. Don't wait until a convenient meeting to talk about it either, post screenshots etc. In your chat if you can, get your team lead on a face to face chat or call to "help" you it. If you can get more senior eyes to see that it's a real problem for you then they're likely to push to get it fixed as well. Ultimately your success is their success, so use that. Nobody in their right mind will blame you if it really is a problem with your equipment.
This applies to buying your own device for work as well. I know it's unlikely to actually happen, but unless you're ready for your personal laptop to be taken as evidence for unspecified time - don't!
Definitely not.
Ask for a better machine via the formal channels (meeting, your manager, support ticket, etc). At the same time, be aware that those channels are probably not very effective, so also "beg, borrow or steal" if you see some hardware around, perhaps from somebody leaving, etc.
Look around, find who gets the money and support. Decide if you can move there, accept it, or find a new company.
Don't get down on yourself or try to fix it. Neither is worthy of your time.
Is there a proper way? Sure, if there is some internal company process for hardware acquisition. Otherwise, I think the proper way is simply to ask: be direct, clear and polite, and explain your concerns.
In the past, I've worked at (UK) companies that have had the right mentality: that hardware is cheap compared to developer/engineer's time.
Some places I've worked actually leased decent workstations for employees, instead of purchasing them. It works out cheap monthly, is good for cashflow and tax, hardware faults are someone else's problem, and upgrades are cheap/easy.
Obviously, these latter points don't answer your primary questions at all, and might not be of much- if any- assistance.
But if the company you work at is fairly small (edit: maybe company size doesn't matter), perhaps you can somehow put these points forward in conversation, for their consideration.
Maybe consider looking for another job if they don't remedy the problem. Not providing adequate tooling for a given job, even if you are junior, is a pretty big oversight on their part, and might be an indicator that they're not great employers.
In case you are in shit part of the world (everything except USA and west EU) complete couple of years to put something on your CV then get the hell outta there, otherwise start looking for a new job right away
If they're unhappy about the speed at which you get work done, well, they made the bottleneck by giving you a junk machine. That's on them, not on you. (Yes, it's frustrating for you...)
If you work as a software developer, as an employee, for a company, then your employer will provide everything: computer, infrastructure, software you need.
Now, depending on the company, what they provide may not ne great (not to say old rubbish) but that's the way it is.
Next week I had a new PC.
I agree with the other commenters: do not use anything personal for work. Why should they benefit from your equipment? This doesn't stop you from researching on your stuff but don't put work code or materials on personal equipment. Its a really bad habit.
Accepting the premise: I would try having a really gentle and discreet private chat with my line manager.
Mention that you’re a bit worried because the machine you have is not fit for purpose and ask them what it means. Does it mean the company is in financial trouble? Or is it a hint that they don’t value your work/expect much from you?
This reframes the question from being seen as “we have a junior developer who is entitled” to “our attempts to reduce costs are making us look bad as a company”.
My worry from your question is that the relationship has a mismatch of expectations - you are working from home because you believe it enables you to work more effectively, but your boss (presumably?) sees it differently. They wouldn’t ask you to stop working from home if you were seen as “getting the job done”.
However the advantage of working in an office is that you can bug your coworkers to use their machines for the bits your machine isn’t up to - like loading figma. Again the importance of doing this nicely is key - moaning gets old quickly and is then seen as a reflection of the person moaning rather than their circumstances. But if you’re “sorry to bug you, but it just won’t work on my machine, so if you could just screen shot all the relevant bits in figma and share them via Slack that’d be awesome because I’m currently blocked” then you’ve made it someone else’s problem. And in a way that expects the company to pay the price, while allowing you to remain positive and focused on getting the job done.
Then do some back-of-the-napkin maths and figure out how much less time it would take with a more modern machine.
Then calculate [yearly needless processing time in hours] x [the cost to employ you per hour] = [wasted company money].
Give this to your manager/employer and tell them this is the cost of you having a useless computer. Unless they are terrible at business and accounting this will get their attention.
Not sure where you live but my expectation is that the employer should provide the developers with good computers.
Smalls shops that are contract based or with no IP assignment, then I'd prefer to use my own hardware. This is how I intend to run my company as I intend to no IP beyond open source contributor agreement.
Why do you think it would look bad on you if a slow computer does computer things slowly? This is an opportunity for you to demonstrate your knowledge of exactly why a slow computer is a bottleneck.
I would say be specific. Do not say "I am slow because my computer is slow". Have a coworker send you benchmarks from their machine for some processes you use often. Run the same benchmarks on your machine. Talk about it with your manager. Ask him what you need to do to get a better machine.
Managers need details.
Then you go down from there. Also ask the computer guys directly.
Obviously look for a job meanwhile