You can do this:
SELECT
ser.id,
ser.name,
s.status,
s.timestamp
FROM Service ser
INNER JOIN status as s ON s.service_id = ser.id
INNER JOIN
(
SELECT
service_id,
MAX(timestamp) AS MaxDate
FROM status
GROUP BY service_id
) AS a ON a.service_id = s.service_id
AND a.MaxDate = s.timestamp;
The join with the subquery:
SELECT
service_id,
MAX(timestamp) AS MaxDate
FROM status
GROUP BY service_id
Will eliminate all the statuses except the one with the latest date.