I found $50 for a month of resumeworded.com helped optimize your resume based on their provided objective function. Just make multiple copies of your resume, like in my case, lastname_first_name_x89_y92_z95.doc and based on the ATS feedback, adjust your resume by making the incremeental changes and updating the file name for the new scores that they pass you. Eventually, you will get to lastname_first_name_x99_y99_z99.doc or thereabouts and have a nice ATS resume. The other part of your question, the skills. My approach was to decide what field I was working in and review various job postings making a list of the desired skills in that field. Then summarize and list those skills for that that targeted field.
Its a little work, but I have never had to wait more than a very short time for a nice job.