The key to success in the cloud is being able to deliver quality code as quickly as possible while ensuring that it has been tested thoroughly. This sounds simple enough but when push comes to shove the code always looses when team feel rushed. I once worked for a VP that used to say "we have to build the foundation before we build the house so lets make sure we have all the right plumbing in place." That image really stuck with me and especially hit home when I read the Phoenix Project as suggested by the same VP. Legacy products especially have a hard time moving from a premise based model to something more dynamic but the key in my opinion is to start small and not boil the ocean. Start small, fail fast and convert application at a time. (and break it up into micro services if possible).
The following "plumbing" shows you what to put in place for a simple Java Application. More detailed sections will expand on the basic tenants and I will try to include the code where possible. This of course is not the only way to do it, the internet is full of options but if it is only you and a Mac this will get you kickstarted.
The first thing you have to decide on is what IDE you want to use for development and test. Personally I am a bit old school so I use Eclipse and that will be the examples used in this overview. Atom is also a good IDE especially for front end work and if you are doing a lot of JSON development. The key for any IDE is the more tools you can find that integrate with it the less time you have to spend outside the IDE. All the examples will show how I use tools in both Eclipse and in my Integration and Production to make sure everything works. This makes double sure that when I push I am not going to break anything as I have put the appropriate levels of testing in place to make sure I have good code at every step. Pick the IDE you want and use the download instructions to get it up and running.
Next you need to create your project in Eclipse. If you already have a project that is great just make sure you have the appropriate directory structure in place as shown in this example. This will be important later when we setup code coverage and static analysis. In addition to being old school I love Star Wars so everything on my site will likely have a Star Wars project name. In this case we will use the code name "Scarif" which is pictured to the right.