The Build engine will need a Jenkins userid/password if you have secured your Jenkins server. Example: if the anonymous user doesn't have the ability to start builds or update projects (to add the buildResultUUID parameter) then you will want to configure a userid and password for the build engine. If your Jenkins server is open to all then no userid/password is required.
The Hudson/Jenkins server integration has a couple of tasks that run every 15 seconds by default. These tasks look for new build requests and monitor the requests in progress. The frequency at which they run is configurable from the server admin page (https://<your_server>/admin#action=com.ibm.team.repository.admin.configureAdvanced ).
Essentially there is a build loop task that will look for new build requests and if there is one, it will ping the Jenkins server for the build engines allowed by the build definition to see if available and then to request the build. The second (build sync) task is a sync task and it will query Jenkins to see the state of any of the builds requested but not started. These are reasons you want the tasks to run frequently.
What you are likely seeing on the second engine though is pings to the Jenkins server when there are no builds on the go. The sync task also monitors all the Jenkins servers associated with RTC build engines to see their current state so it can be reflected in RTC whether the build engine is active or not. The build engine on the overview tab has a check box for "Monitor the last connect time" along with a default threshold of 3 minutes. If this is enabled, the sync task will ping the Jenkins server every threshold/2 minutes (3/2 = 90 seconds) to determine its availability for servicing requests. You can turn this off or extend the time period if you want. Build requests for the build engine will still be processed (though you might get a warning in the RTC client that the engine doesn't appear to be active).
dennys hsieh selected this answer as the correct answer