We are looking for an AWS engineer to rebuild our infrastructure. We need someone who can set up the whole environment and who will also continue working with us in order to maintain and extend the whole system as/when necessary.
You must be a specialist in AWS and have the ability to both build the necessary infrastructure but also advise on the best approach/solution. We are not looking for a DevOps engineer who can do AWS but for an AWS specialist instead. AWS certification will be an advantage.
We need to create 2 separate, isolated environments; one for production and a similar, smaller one for testing. Our current setup is on AWS but it doesn't meet all of our requirements, so we prefer to create a new one and scrap the old.
The whole system needs to automatically scale up & down based on certain criteria that we will define, e.g. network traffic, CPU or RAM usage, etc. So every single component must autoscale, including EC2, RDS, etc.
The whole system needs to be distributed across several multi zones for increased resilience/availability.
We need automatic incremental daily backups of everything and hourly backups of the DB - MySQL.
We want every change to be done through CloudFormation so that we can save the JSON configuration arrays in our code repo - this way we will be able to track all changes.
Currently we use EBS for storing images and other static files but we would like to move everything to S3.
We need to have full monitoring enabled and alerts must be send to us if something goes wrong.
Code releases should be done ideally directly from our repo (Mercurial) and get synced across all instances. Similarly when a new instance is added it must pull the correct code revision and all settings must apply automatically.
The whole system must have strict access rules and enhanced security.
The AWS services we are currently using are EC2, RDS, Elasticache (memcache but in the future we will move to Redis), EBS (we want to move into S3 instead), Route 53, Elastic Load Balancer.
We need you to install necessary software, extensions, SSL certs, etc.
Finally although we want a robust and speedy system, we need to keep the hosting costs as low as possible, which is why autoscaling is important.
We will also build a test environment with similar requirements but at a much smaller scale.
The above are the high level requirements but everything is up for discussion in order to get the best possible solution for us based on the services that AWS offers.
This is an urgent project so we would like to start as soon as possible. Saying that we won't compromise on quality in order to finish the project sooner.