software developer salary entry level