Absolutely
AWS: Superior to the cloud compute at the Fang I was at. Best-in-class API, and documentation, and support on-call. Tenancy issues are rare.
Docker: Run any application on any server with one command. Isolates all state from that application to one-directory. Allows spinning up test-environments with your whole stack (~6 applications or so if you're a small team, including DB) on a server in a few minutes with docker-compose.
Github: Solid UI design, lots of little niceties, adequate search.
Splunk: Best-in-class logging solution (the place I was at asked you right-click download 200megs of logs and grep them). Can be intergated with Jenkins
Jenkins: Can do almost anything well, easily with the right plugins. Acts as both CI/CD job system and scheduled job system with full premissioning, history for auditing, logs, supports dynamic workers easily with AWS.
Packer, artifactory, slack for integrations, Jira (which can represent complex workflows well)
------
How they work at a startup - You can setup jenkins in a couple hours if you know what you're doing. Thanks to docker, it's 1-command to get it running. I'd then have nightly backups of it (easy via AWS or a jenkins job). Integrate it with LDAP so that you can lock down certain functionality if necessary (e.g. deploys, private creds). Set most jobs to have reasonable timeouts, retries, and alert the devops team on failures (devops will own making sure known-failure-cases emit the proper message and failure-code). Connect jenkins to splunk, and you'll have reliability and time statistics on every CI job.
Github PRs plug into jenkins, which can auto-lint, auto-build docker containers, and such.
Splunk (or sumo): Get logs / metrics / traces into here and/or datadog.