Job Title: Senior C++ Tech Architect
Work Location : Richardson, TX ,Tampa, FL ,Baskin Ridge ,NJ , Raleigh ,NC ,Alpharetta ,GA (Any one of this location would work)
Work mode – Hybrid mode (3 days week)
Contract duration: 12+ months Contract
Job Description
Telecom Domain is Mandatory!
MUST HAVE SKILLS
C++ Architect
ProC
Telecom Domain
Senior C++ Tech Arch
1. Technical Expertise
Advanced C++ (11/14/17/20) Skills: Deep understanding of modern C++ features (RAII, smart pointers, STL, concurrency, templates, lambda expressions, etc.)
Object-Oriented Design: Strong grasp of OOP principles, design patterns (Factory, Singleton, Observer, Strategy, etc.), and SOLID principles.
Multi-threading & Concurrency: Experience designing thread-safe systems, using std::thread, mutexes, condition variables, and asynchronous patterns.
Database Integration: Proven experience with Oracle (OCI, OCCI) and/or DB2, including connection pooling, transaction management, and error handling.
Inter-process Communication: Familiarity with message queues (MQ), sockets, and RESTful APIs for system integration.
Build Systems: Expertise with Makefiles, CMake, and build automation for large codebases.
2. Telecom Domain Knowledge
Telecom Provisioning Workflows: Understanding of PON, ONT/OLT, circuit management, and service activation flows.
Data Modeling: Ability to model complex telecom entities and relationships in C++ and relational databases.
Business Logic Mapping: Translate telecom business rules into maintainable, extensible C++ code.
3. Architectural Skills
· Modular Design: Architect systems for separation of concerns (e.g., provisioning, order management, equipment management).
· Extensibility: Design for easy addition of new PON types, equipment, and service features.
· Error Handling: Implement robust error propagation, logging, and rollback mechanisms.
· Configuration Management: Use config files, environment variables, and parameterization for flexible deployments.
4. Codebase Management
· Legacy Code Refactoring: Experience modernizing and refactoring large, legacy C++ codebases.
· Unit & Integration Testing: Design for testability, use frameworks like Google Test, and ensure high code coverage.
· Documentation: Maintain clear code documentation, UML diagrams, and architectural decision records.
5. Performance & Scalability
· Profiling & Optimization: Use tools (Valgrind, gprof, perf) to identify bottlenecks and optimize for low latency and high throughput.
· Resource Management: Ensure efficient use of memory, CPU, and database connections.
6. Leadership & Collaboration
· Technical Leadership: Mentor developers, conduct code reviews, and enforce coding standards.
· Cross-team Communication: Work with DBAs, QA, DevOps, and business analysts to align technical solutions with business needs.
· Agile Practices: Participate in sprint planning, backlog grooming, and iterative delivery.
7. Security & Compliance
· Secure Coding: Prevent buffer overflows, SQL injection, and other vulnerabilities.
· Audit & Compliance: Design for traceability, audit logging, and regulatory compliance (e.g., SOX, PCI if applicable).
8. Tooling & DevOps
· CI/CD Integration: Familiarity with Jenkins, Git, automated build/test pipelines.
· Deployment Automation: Support for containerization (Docker), orchestration (Kubernetes), and automated deployments.