developer requirements