```python
import collections
from typing import Optional

class JobQueue:
    def __init__(self):
        self._queue = collections.deque()
        self._results = {}
    
    def add_job(self, job_id: str, data: dict) -> str:
        self._queue.append((job_id, data))
        return job_id
    
    def process_next_job(self):
        if self._queue:
            job_id, data = self._queue.popleft()
            result = {"job_id": job_id, "data": data, "status": "completed"}
            self._results[job_id] = result
            return result
        return None
    
    def get_result(self, job_id: str) -> Optional[dict]:
        return self._results.get(job_id, None)
```