Upgrade to Pro — share decks privately, control downloads, hide ads and more …

open-source and me: tips for a career in software development

open-source and me: tips for a career in software development

a talk aimed at computer science students, about participating in open-source and building a career in software development

Aman Karmani

April 03, 2022

More Decks by Aman Karmani

Other Decks in Technology


  1. • programming for 20+ years • full-stack polyglot dev +

    ops • 10 years in silicon valley building my career • founded multiple startups • early engineer at GitHub • consulting for AirBnb, Twitter, etc • thousands of open-source contributions • moved to sunny Santa Barbara in 2018 Aman Karmani · @tmm1 about me
  2. tips for a career in software development master a scripting

    language pick any one you like and get really good at it
  3. tips for a career in software development invest in your

    development environment experiment with di ff erent code editors like vim, emacs, intellij, vscode to fi nd what makes you most productive
  4. tips for a career in software development learn web technologies

    html, css, javascript http request/response + headers
  5. tips for a career in software development engage with your

    community attend conferences, talks and meetups about the languages and frameworks you’re using
  6. tips for a career in software development learn to use

    debugging tools when you’re stuck, fi nd a tool which will dig deeper
 pro fi lers, tracers, inspectors, debuggers for example: chrome web inspector
  7. tips for a career in software development think about how

    and where your code will run writing code is only half the battle.. maintenance + operations resilient software saves you sleep
  8. about me 2014 - RubyKaigi Tokyo ! Aman Gupta (@tmm1)

    VP Technical Infrastructure GitHub, Inc. Ruby 2.1 in Production How I upgraded github.com from 1.8.7-p72 to 2.1.2 http://bit.ly/ruby21-in-production
  9. pick your battles why open source? 
 Operating System 

    Device Drivers Framework Libraries Proprietary Business Logic } } closed source trade secret speci fi c to your product/business open source shared infrastructure community adding features edge case bugs found and fi xed credit card
 processing http
 webserver tcp/ip
 network stack memory management
 process scheduling
  10. open-source is a super power control your own destiny •

    look behind the scenes, instead of getting stuck • every change documented for future devs (+ you) • who changed it and when • what lines changed where • why why why
  11. OpenTaxSolver 20 years old! • written in C • subversion

    source control • hosted on sourceforge • GPLv2, contribute patches via email • mailing list + facebook group for discussion
  12. since 1996! excel1040 • written in excel macros (!) •

    no source control
 no license • can it be called open- source? • hosted on google sites • contribute bug reports via email
  13. • written in TypeScript and React.js • git for source

    control • AGPL3, hosted on GitHub • discord discussions • automation: CI, codecov, dependabot, code formatting newcomer UsTaxes.org
  14. • with the project • README, contribution guidelines, coding style

    • recent discussions, upcoming releases and goals • with the code base • look at open and recently closed issues • read through open and merged pull requests • what libraries, languages and frameworks are used? • how to setup a development environment? familiarize yourself let’s contribute
  15. tips for a career in software development participate in open-source!

    build your skills and your portfolio scratch your own itch