Software Engineer(Go and Java, Datastructure, Algorithm)
Motorola SolutionsMatch Score
Against your primary resumeLogin to See Your Match Score
Create a free account or log in to unlock your CV match score across:
Protocol Intelligence
Data-driven signals on your job's competitivenessLog in to see why each signal reads the way it does.
Job Description
Structured overview of role & requirementsAbout This Role
Design and develop a high-throughput, active-active microservice framework for dynamic traffic routing and load balancing across multi-site deployments.
Develop core Load Distribution engine using Finite State Machines and implement algorithms like Weighted Average Score and hysteresis.
Architect scalable API and messaging layers using gRPC and RabbitMQ, implement distributed leader election and consensus with Consul Raft and LockAuthority, ensuring system can handle 3000+ assignments per second.
Minimum Requirements
2 to 4 years of industry experience in software engineering.
Strong hands-on experience with Golang (preferred) plus proficiency in Java or C/C++.
Deep knowledge of distributed systems, multi-threading, concurrency, Finite State Machines, and networking/messaging protocols including gRPC, Protobuf v3, and RabbitMQ.
Experience working with distributed databases (Apache Ignite/GridGain), consensus mechanisms (Consul Raft, LockAuthority), persistence and caching solutions (PostgreSQL, Redis, ElasticSearch).
Ideal Candidate Profile
Experienced in designing active-active multi-site distributed systems handling network partitions and quorum scenarios.
Skilled in building large-scale transaction systems and data migration workflows with end-to-end observability (OpenTelemetry, Kibana).
Familiar with enterprise security (Vault, mTLS) and automated deployment pipelines (Docker, CI/CD).
