Software Developer

  • San Francisco, CA
  • Full-time

Company Description

The Weather Channel is the world's leading cross-platform media company with a portfolio that includes The Weather Channel television network, TWC digital properties (, mobile and tablet applications) and Weather Services International (WSI). Headquartered in Cobb County since 1982, The Weather Channel brand has connected millions of consumers by providing the most accurate weather forecasts, 24 hours a day. Seen in more than 100 million U.S. households, The Weather Channel network is one of the most widely-distributed cable networks. The Weather Channel online properties reach 60 million unique Web consumers each month. This includes 32 million consumers monthly through on mobile Web and mobile apps. TWC has the No.1 app on all smartphones and is the second most used app on all smartphones. WSI provides business-to-business weather services to media, aviation, marine and energy sector.


Job Description


We are looking for a passionate Software Developer to work in our fun and fast-paced environment. You will create and modify software systems - - and though you will be primarily concerned with meteorological products, development may be geared toward (but not limited to) other areas such as general infrastructure, Geographic Information Systems (GIS), and support of sales / marketing functions.


  1. Software Development (80% of time)
  • Design, write, modify, debug, and test new or legacy software systems in an agile team environment
  • Use source debuggers, profilers, runtime analysis tools, and source code control systems
  • Create and maintain documentation
  • Perform research related to languages, data structures, algorithms, file systems, libraries, tools, datasets
  • Assist team members in software design / development / debugging activities
  1. Software Maintenance (10%)
  • Recognize and troubleshoot problems with server hardware and software
  • Upgrade, build and install 3rd party software
  • Use monitoring tools / dashboards to determine system status
  • Participate in on-call rotation
  1. Customer support (10%)
  • Use bug reporting / trouble ticket software to address issues brought up by clients and users
  • Work with dedicated support staff to gather further information and identify root causes of issues



  1. Skills, knowledge and abilities
  • Linux development toolchain (gcc/g++, make, gdb, gprof, valgrind, GIT, etc)
  • Linux system administration, bash / sh
  • C, C++, C#, PHP, Python, Javascript, other languages as needed
  • Object Oriented design, template metaprogramming, algorithms and data structures
  • Sockets, multithreading, graphics and image generation, regular expressions
  • Strong math skills
  • Strong communication skills and the ability to successfully work in an Agile/Scrum team environment
  1. Experience:  prior software development experience
  2. Preferred education level:  Bachelor’s degree in Engineering or a related field

Additional Information