Not seeing the SQL Server Agent icon in SSMS' Object Explorer tree on a non-express edition SQL server where you are not a member of sysadmin, but are a member of at least one of the SQL Server Agent Fixed Database Roles can also be because you login using a windows login that is allowed in through a windows group only: no entry exists in master.sys.server_principals for your windows login.
The reason for this is that IS_ROLEMEMBER() always returns 0 when the group membership is via a windows domain group instead of the domain login itself. This is documented in the link above as:
IS_ROLEMEMBER always returns 0 when a Windows group is used as the database principal argument, and this Windows group is a member of another Windows group which is, in turn, a member of the specified database role.
Or it may be also be caused by the SQL server not being able to contact the AD to retrieve the required information. From the same link:
If the optional database_principal parameter is not provided and if the database_principal is based on a Windows domain login, it may be a member of a database role through membership in a Windows group. To resolve such indirect memberships, IS_ROLEMEMBER requests Windows group membership information from the domain controller. If the domain controller is inaccessible or does not respond, IS_ROLEMEMBER returns role membership information by accounting for the user and its local groups only. If the user specified is not the current user, the value returned by IS_ROLEMEMBER might differ from the authenticator's (such as Active Directory) last data update to SQL Server.
Please don't down-vote this: Even though this answer does not result in a way to make the SQL Server Agent icon show itself in the object explorer, it still provides an answer to why it is not shown in some circumstances.
The way to make the icon show for this particular user would be to explicitly add the windows user as a login and add a user in the msdb, which is a member of one of the SQL Server Agent Fixed Database Roles. However this often defeats the purpose why you used those groups in the first place.