- Data Compression
Senior C++ Developer – Data Compression
$130 – 150k
Senior Developer Specialist – Data Compression is a critical member of our Data Management Functions team. In this role, he/she will focus on data compression and data parsing and will develop these capabilities into methods that integrate tightly to critical solution applications. This role needs to work in a fast-paced and agile development environment using the latest software development technologies and infrastructure. As a Senior Developer Specialist – Data Compression you will be responsible for every aspect of the software development lifecycle, including software architecture design, front-end development, system integration, back-end development, automation testing, software deployment leveraging continuous integration tools, and monitoring to ensure high availability and resiliency.
Essential Duties and Responsibilities
- Design, develop and maintain C++ software solutions that interact at a file level with text data on an Azure platform, with an emphasis on compression, decompression and data parsing
- Optimize software solutions for performance, scalability, and reliability.
- Collaborate with cross-functional teams to ensure the software is compatible with other Azure components and services.
- Write high-quality code, perform code reviews, and ensure code is properly tested and documented.
- Troubleshoot and debug software issues, provide technical support and assist in resolving customer issues.
- Stay up-to-date with the latest trends and technologies in C++ development and low level text file interactions.
- Work within our SAFe (Scaled Agile Framework) business processes
- Develop highly available, resilient, and secure applications with a cloud-native approach, deployed into a public cloud infrastructure. (Cloud-native technologies empower organizations to build and run scalable applications in modern, dynamic environments such as public clouds. Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach.)
- Strong experience with modern development principles including DevOps, Microservices, Cloud, Automation Frameworks, Enterprise Integration/API
- Breadth of experience across Development, Infrastructure, Networking, Security, Database, and Storage.
- Partner and collaborate with key stakeholders across the enterprise including solution management, security, and operations to ensure alignment throughout the solution development pipeline.
- Work closely with other developers, architects, and stakeholders to ensure the software meets requirements and design specifications.
- Apply Agile/Lean principles and a continuous improvement mentality to every aspect of solution development (for instance: responsiveness to change, adding incremental value, short feedback loops, eliminating waste, continuous learning)
Qualifications and Experience
Minimum Technical Expertise:
- 5+ years of experience as a full stack developer
- 10+ years of experience developing C++ applications, involving heavy data file interactions
- Experience with security and audit technologies from a developer perspective: vulnerability scanning, authentication & authorization (OAuth, SAML), monitoring (Prometheus, Nagios), enterprise logging (e.g. Splunk, Logstash)
- Experience with messaging technologies such as Kafka, gRPC
- Experience with modern distributed source code management systems such as Git / GitHub
- Experience with one or more of the following compression algorithms:
- DEFLATE: The DEFLATE algorithm is widely used for compressing data and is the algorithm used in popular file formats like ZIP, gzip, and PNG. Knowledge of this algorithm would be useful for developing file compression and decompression solutions.
- LZ77/LZ78: These are lossless compression algorithms that are widely used in data compression applications. Knowledge of these algorithms would be useful for developing solutions for text compression and decompression.
- LZO: LZO is a fast, lossless compression algorithm that is often used in real-time data compression applications. Knowledge of this algorithm would be useful for developing solutions that require fast compression and decompression of text files on Azure.
- Azure development experience, including Microsoft Azure Developer or Azure Solutions Architect certification
- Experience with SAFe
- Experience with additional coding languages such as Java Python and C#
- Provide application development thought leadership across the development organization
- Demonstrates the initiative to go above and beyond assigned tasks and explore alternate technologies and approaches
- Ensures understanding of issues and presents clear rationale. Able to speak to mutual needs and win-win solutions. Uses two-way communication to influence outcomes and ongoing results.
- Possesses ability to analyze impact of technology choices and be able to communicate and influence at an enterprise level
- Persists to completion, especially in the face of overwhelming odds and setbacks. Pushes self for results; pushes others for results through team spirit.
- Strong oral and written communication skills
- Strong interpersonal skills
- Excellent team building and problem-solving skills