if it is run of the mill programming wise I doubt you have very much down time to get basic things in place. most of it is already there, you may just have a lot of questions like “where should I put this code?” but if it is not multiplayer most of these questions really boil down to preference for how you like to organize things - not like if you choose wrong the project breaks.
Artist and everybody else is probably going to vote for unreal.
probably the best thing to do is just blast through a couple basic “make a game” tutorials to get a quick sense where things are in the editor. There are some “unity to unreal” guides as well.
i’ve worked with a couple programmers who came from unity and at first they weren’t happy about blueprints but within a few weeks they liked it a lot (it’s super fast in general to work with, though of course you’ll find some pain points like working with arrays or maps is more tedious compared to code), and just chipped at c++ a little here and there. But unless you are building a AAA game, blueprints will get you like 99% of the way there and its much easier to convert that to c++ than build c++ from scratch (especially if you are learning the engine).
there do exist some scripting languages like angelscript but with 5.0 i dont think its worth bothering with because live compile works great, and you actually have more documentation and examples of c++ than you do for the scripting languages.
basically for the programmer i’d suggest don’t get too hung up wrestling with c++ because most things you want to do will be done very easily with blueprint, so you can get the game verified fast that way, and then for performance go in and refactor selectively to c++. Also always test doing things the dirty fast way first and don’t assume that something which gave you performance headache in one engine will be the same case in unreal. That way you don’t spend weeks building something like actor pooling system when just direct spawn/despawn would not present any issue even if done in the thousands.
on a team if there is more than one programmer you will have a hard time versioning blueprints. it will take some experimentation to develop a pipeline for that because blueprints don’t play well with version control. I think it may be different story with perforce IIRC, but I’ve only been using github.
If there is only one programmer and maybe some more gameplay designer types, what you can do is setup the bones of your classes in c++, you put all the public parameters and functions there, and then blueprint class can be derived where they script the actual logic. But there is plenty written about workflows for that - MothDoctor had some handy guides in the unreal forum learn area for that.
if everybody on team is learning unreal it will probably be three times slower compared to if you have a native available on call to answer questions.