Principal Software Engineer I
Sorry, this job was removed at 9:44 a.m. (MST) on Wednesday, May 12, 2021
By clicking Apply Now you agree to share your profile information with the hiring company.
About the Team:
VIZIO is looking for a Principal Software Engineer play an important role in leading other software engineers in implementing projects. You will: Design, Implement, and Test software related to our software/services. The Principal Engineer will manage a team and communicate designs and decisions within the team and will encourage new ideas and solutions.
About You:
- Bachelor's Degree (BA, BS, or MS in Computer Science) or equivalent experience.
- Minimum 8 years of development experience, at least 2 years in a commercial environment for a consumer-facing product.
- Experience leading a team of skilled software developers.
- Experience mentoring developers to increase quality and effectiveness.
- Expert Knowledge of with .NET and C#.
- Proficient building solutions using AWS or equivalent technologies.
- Experience with scalable distributed systems.
- Extensive knowledge of object-oriented programming.
- Experience working with RDBMS.
- Experience working with MongoDB or other NoSQL technologies.
- Ability to troubleshoot, debug, and performance tune software code.
- Strong analytical skills, attention to detail, and a careful approach to handling issues.
- Understanding of software algorithms and ability to determine runtime complexity of algorithms.
- Proficient with containers and orchestration.
What You Will Do:
- Gather requirements to design and plan software solutions
- Design and implement software solutions by writing code in a matter consistent with the company's coding standards and guidelines.
- Responsible for testing code to ensure that it is performing as expected in regards to correctness and performance.
- Manages programming tasks and ensures they are worked on in priority order as determined by their manager.
- Keep track of bugs in the code, and provides fixes in a timely manner.
- Participate in the planning and scheduling of tasks, and responsible for meeting deadlines as determined jointly with their manager.
- Put comments in code as appropriate, and produces external documentation for more complex software components.
- Recommend changes and improvements in the overall shared codebase.
- Stays up-to-date with current development tools, processes, and techniques as related to the type of programming tasks assigned.
- Provide information by collecting, analyzing, and summarizing development and service issues.
Read Full Job Description