I like @motosubatu's answer, but feel that some details are missing (too many for comments).
Should I open a ltd company and a business bank account first? or
should I get an accountant first to help me?
Either. If you approach an accountant, they'll deal with everything for you for a large fee.
You could instead do all the paperwork yourself and file with Companies House (£25? fee). I always used to recommend against this, but the UK gov and Companies house websites have got a lot more friendly in the last few years.
An alternative is a formation company offering Ltd company setup, costing between £80 and £150. I always went for the basic, cheapest package in the past. When you get the formation info (Company reg number, articles etc in an email about 4 hours later), book an appointment with the Business Manager at a bank of your choice. Then take all the above to the accountant, and ask them to do book keeping (about £30-£40 per month) and your company return and admin (£100-£400 per year). Some accountants will offer a package with all the above which might be better value.
[Update - @gnasher729 thinks formation companies are a waste of money. Having looked again at the Companies House direct apply route, I'd probably agree as it's a lot easier than when I last did this 6 years ago. But it's your choice; a straight trade off between cost and convenience]
I need an address for for my ltd company. I don't want to use my home
address. What options do I have? should I use a virtual office or get
an accountant who can provide an address?
As a company director, your home address will be publicly visible, unless there is a compelling reason why not. You could have a "trading address", which might be your office / home office. You absolutely must have a "Registered Address" for company documents (e.g. from HMRC) - it is where a copy of your accounts must be kept. You can ask your accountant to use their's - I think this is the address you referred to. I wouldn't bother with either a virtual address or a mailbox.
How can I find a reputable accountant for software development
contracts. I will need help with ir35*.
There are big changes coming in April 2020 regarding this. You might be better to wait and see, starting with an Umbrella Company (google) instead of opening your Ltd. Don't immediately jump into one recommended by the agency, if you're using one.
If you're "caught" by IR35, it just means having to take your entire company income less operating costs as "salary", with the attendant taxes. This will be substantially more than drawing a small salary, up to the tax-free allowance (currently about £12500), with the rest as dividends.
There are so many other points to make; advice for a new contractor, but I'll refrain as they don't address the question.
- IR35 - UK legislation which clarifies whether a contractor is genuinely in business on their own account, or is a disguised employee of the client.