So this is my first batch ever. My starting gravity was 1.058 7 days ago. My gravity yesterday was 1.007. Both within range for the recipe kit. I measured again today and got 1.011 in a beer thief. Also, I transferred to a secondary yesterday after taking the reading. Why would the gravity go up, and is this within an acceptable margin of error? I'd like to bottle tomorrow, since I won't have time again until next weekend.
Specific gravity will never increase while a beer is fermenting, or after a beer has finished fermenting. One of the readings must have been in error. I suspect the first reading of 1.007, as this would be 100% * (58-7) / 58 = 87.9% attenuation, which is suspiciously high. The reading of 1.011 yields an attenuation of 81%, which is more within reason.
There's a few ways a hydrometer reading can be off:
Temperature. Hydrometers are calibrated to a specific temperature, as the density of water changes with temperature. If the beer was much warmer for the first reading than the second, this could be a factor. However, a 4 point difference in SG would require a very large difference in temperature, so I don't expect this is the source of the problem.
Bubbles of carbon dioxide can adhere to the hydrometer, lifting it in the sample tube, and giving a higher reading than reality. You can avoid this by de-gassing the sample before taking your reading. Repeatedly pour the sample between two glasses until it stops foaming, and then take your reading.
Operator error. You could have just read the wrong number of the hydrometer, or recorded it wrong.
Regardless, your beer has probably stopped fermenting.
But it's not ready for bottling yet. Even though the fermentation is likely complete, the yeast will continue working over the next couple of weeks to improve the flavour of the beer. Leave it in secondary for another couple of weeks before bottling, and your beer will taste much better.