Desired Skills and Experience
- Design new software applications, support applications under development, and customize existing applications. Develop software update process for existing applications. Assist in the rollout of software releases.
- Collaborate with project stakeholders to identify product and technical requirements. Conducts analysis to determine integration needs.
- Diagnose performance issues and propose and implement code improvements
- Prove scalability with load generating tools
- Ensure the software architecture is lean and extensible
- Ensure software modules are reliable for reuse
- Works with Quality Assurance team to determine if applications fit specification and technical requirements.
- Be a team resource to help watch for new technologies and methodologies that are relevant to our problem space
- Define and refine team development processes
- Involve in the DevOps and on-call duties as necessary
- Go (golang)
- Python 3
- C
- C++
- Java 8
- Linux (CentoOS)
- Git
- Apache httpd and the Apache Portable Runtime
- Redis
- MongoDB
- OpenStack
- MemSQL
- Kubernetes
- Docker
- ELK
- Grafana
- Prometheus
- Puppet
- Do you know beautiful code when you see it? Can you troubleshoot that bug that nobody else can fix? Are you proactive and willing to take ownership? Good.
- Like to whiteboard? Great so do we!
- Be able to analyze and clearly articulate complex issues and technologies understandably and engagingly with your teammates.
- BS in Computer Science and 5+ years equivalent experience; MS in Computer Science highly preferred
- Experience in delivering large and complex products
- Experience in C programming. Experience with C++ and/or Go (Golang) is desirable
- Experience developing software on and for multicore Linux machines
- Knowledge of Object Design, Design patterns, and Algorithms
- Knowledge of basic system administration tasks, and best practices
- Experience developing software for Networking, Web services, HTTP, and TCP/IP
- Experience developing multi-threaded and high performance software
- Experience with FFMPEG, ISO DASH-BMFF, HLS, HDS, MPEG-2, MPEG-4, and H.264 compression a plus
- Understanding of RESTful design principals
- Able to analyze and clearly articulate complex issues and technologies understandably and engagingly
- Great design and problem solving skills, with a strong bias for architecting at scale
- Strong troubleshooting and problem solving skills, adaptable, proactive and willing to take ownership
- Devops mindset and experience
- Experience with on-call and operation support
- Experience with dashboard and operational support tools development
- Experience with CICD
- Able to work in a fast-paced environment