Every SharePoint list includes
ModifiedBy fields by default -- because they are part of the base
Item content type. They perform precisely the behavior you're describing.
If you are looking to access them from any of the client APIs the user entities are named
Editor respectively, but the date fields are still called
If you're using the REST API you'll have to do something like
The CSOM APIs will bring back those values automatically with a request for list items, you just have to use something like
item.get_item("Editor").get_lookupValue() to get the users name (note this is a JS Example, although the C# version would be very similar)