Overview
We are seeking a highly skilled C++/Python Developer to join our team, responsible for building and maintaining a robust, cloud-native applications hosted on AWS. In this role, you will design, develop, and optimize distributed applications that leverage the scalability and power of AWS. You will work with both C++ and Python to develop and debug complex, high-performance systems while ensuring they operate efficiently in a distributed environment.
As part of your responsibilities, you will focus on the full lifecycle of cloud-native applications, from design and development to troubleshooting and optimization. You will be instrumental in ensuring that our systems are reliable, scalable, and performant in a cloud environment. Your expertise in AWS, C++, and Python will be key in maintaining and improving our infrastructure to meet the growing needs of the organization.
Responsibilities
- Designing, developing, and maintaining cloud-native applications using C++ and Python in AWS environments.
- Troubleshooting and optimizing distributed systems to ensure high performance and reliability.
- Collaborating with cross-functional teams to build and integrate solutions that scale effectively in the cloud.
- Managing cloud infrastructure and services, ensuring the applications meet performance and security standards.
- Continuously monitoring and improving the reliability and scalability of the systems within the AWS ecosystem.
Qualifications
Education/Experience Requirements:
- Bachelor of Science Degree in Computer Science, Computer Engineering, or Software Engineering, or equivalent experience.
- 5+ years of software development experience
Knowledge/Skill Requirements
- Proficiency in C/C++ programming in a Linux environment and TCP/IP network programming, including socket-based programming
- Experience working on problems of moderate to high complexity, with the ability to analyze and resolve issues by reviewing multiple factors and implementing tailored solutions.
- Core Language Features: Advanced knowledge of templates, STL (Standard Template Library), smart pointers, lambda expressions, and RAII (Resource Acquisition Is Initialization).
- Multithreading and Concurrency: Expertise in threading libraries like
and
for building concurrent applications. - Performance Optimization: Skilled in memory management, code profiling, and performance tuning to develop efficient and high-performance applications.
- Design Patterns: Strong grasp of design principles and patterns such as Factory, Singleton, Observer, and Dependency Injection for robust code architecture.
- Knowledge of network security methodologies, including secure protocols (TLS/SSL), encryption standards, and secure application design.
- Experience in streaming audio/video development, including building both servers and clients for multimedia applications.
- Expertise in setting up and managing CloudWatch Metrics, CloudWatch Logs, and CloudWatch Alarms for real-time application and infrastructure monitoring.
- Proficient in using AWS X-Ray for distributed tracing in microservices and troubleshooting performance bottlenecks.
- Experience with third-party monitoring tools (e.g., Prometheus, Grafana) integrated with AWS for enhanced observability.
- Proficient in designing, deploying, and managing containerized applications using Kubernetes in AWS EKS.
- Hands-on experience with node scaling, pod autoscaling, and resource optimization in EKS.
- Familiarity with AWS App Mesh, IAM roles for service accounts, and Kubernetes RBAC for secure multi-tenant cluster deployments.
- Capable of making significant contributions to software products or projects with a clear understanding of best practices in software design, development, and testing.
- Hands-on experience with CI/CD pipelines for EKS workloads using GitLab.
- Proficient in project planning, tracking internal and external dependencies, and coordinating with cross-functional teams.
- Ability to manage lab resources, including system configurations and test environments, effectively.
- Strong verbal communication skills to articulate technical concepts to both technical and non-technical audiences.
- Demonstrated ability to interface with customers, focusing on engineering documentation and technical support.
REQ-145751","qualifications":"Education/Experience Requirements:
- Bachelor of Science Degree in Computer Science, Computer Engineering, or Software Engineering, or equivalent experience.
- 5+ years of software development experience
Knowledge/Skill Requirements
- Proficiency in C/C++ programming in a Linux environment and TCP/IP network programming, including socket-based programming
- Experience working on problems of moderate to high complexity, with the ability to analyze and resolve issues by reviewing multiple factors and implementing tailored solutions.
- Core Language Features: Advanced knowledge of templates, STL (Standard Template Library), smart pointers, lambda expressions, and RAII (Resource Acquisition Is Initialization).
- Multithreading and Concurrency: Expertise in threading libraries like
and
for building concurrent applications. - Performance Optimization: Skilled in memory management, code profiling, and performance tuning to develop efficient and high-performance applications.
- Design Patterns: Strong grasp of design principles and patterns such as Factory, Singleton, Observer, and Dependency Injection for robust code architecture.
- Knowledge of network security methodologies, including secure protocols (TLS/SSL), encryption standards, and secure application design.
- Experience in streaming audio/video development, including building both servers and clients for multimedia applications.
- Expertise in setting up and managing CloudWatch Metrics, CloudWatch Logs, and CloudWatch Alarms for real-time application and infrastructure monitoring.
- Proficient in using AWS X-Ray for distributed tracing in microservices and troubleshooting performance bottlenecks.
- Experience with third-party monitoring tools (e.g., Prometheus, Grafana) integrated with AWS for enhanced observability.
- Proficient in designing, deploying, and managing containerized applications using Kubernetes in AWS EKS.
- Hands-on experience with node scaling, pod autoscaling, and resource optimization in EKS.
- Familiarity with AWS App Mesh, IAM roles for service accounts, and Kubernetes RBAC for secure multi-tenant cluster deployments.
- Capable of making significant contributions to software products or projects with a clear understanding of best practices in software design, development, and testing.
- Hands-on experience with CI/CD pipelines for EKS workloads using GitLab.
- Proficient in project planning, tracking internal and external dependencies, and coordinating with cross-functional teams.
- Ability to manage lab resources, including system configurations and test environments, effectively.
- Strong verbal communication skills to articulate technical concepts to both technical and non-technical audiences.
- Demonstrated ability to interface with customers, focusing on engineering documentation and technical support.