Remote

Software Development Engineer II - Automation

Itential, Inc. logo Itential, Inc.
Atlanta, Georgia - United States 🇺🇸

Company Overview:

Itential provides powerful network automation software to companies worldwide, from Fortune 500 telecommunications and financial services companies to enterprises of all sizes. We are committed to building world-class products that enable and accelerate the move toward software-driven networks and next generation, agile network operations. Our corporate headquarters are in Atlanta with offices in the UK and Latin America, and we are growing fast!

Job Description:

Itential is looking for a proficient and enthusiastic Software Development Engineer II to join our innovative team. In this role, you will be responsible for designing and implementing software solutions that improve the products and services impacting customers across the globe. You will have the opportunity to work on complex projects and collaborate with diverse teams, contributing to the development of high-quality software systems.

Key Responsibilities

Develop, deploy, and maintain robust and scalable automation platform services in Go, including the gateway server, gRPC APIs, WebSocket connectivity, and embedded network automation tooling.

Design software with a focus on performance, reliability, and scalability — including distributed execution patterns, HA leader election, multi-backend store architecture (BoltDB, etcd, DynamoDB), and concurrent request handling.

Collaborate with engineering teams to translate network automation requirements into clean technical specifications, working across the core platform, runner framework, and protobuf-defined service contracts.

Independently own components from design through production delivery — including adapters, gRPC service handlers, store backends, or netsdk integrations — following established Go conventions and architectural patterns.

Conduct code and design reviews to uphold Go idioms, concurrency safety, and API consistency across the gateway5 codebase.

Continuously improve platform reliability through automation, refactoring, and optimization — including CI/CD pipeline enhancements, test coverage improvements, and performance profiling.

Stay current with the Go ecosystem and cloud-native tooling (gRPC, buf, etcd, DynamoDB, Prometheus) and apply relevant advances to improve the platform.

Basic Qualifications

Bachelor’s degree in Computer Science, Engineering, or a related technical field.

3+ years of professional software development experience.

Proficiency in Go or a strongly-typed backend language (e.g., Java, C++); strong motivation and ability to work in idiomatic Go full-time.

Solid understanding of CS fundamentals — data structures, algorithms, concurrency, distributed systems, and network protocols.

Experience building and consuming gRPC or REST APIs in a collaborative team environment using standard workflows: Git, code review, vendored dependencies, and CI/CD pipelines.

Strong problem-solving skills with a disciplined approach to debugging, testing (unit and integration), and root cause analysis.

Good verbal and written communication skills, including the ability to document technical decisions and architectural tradeoffs clearly.

Demonstrated ability to effectively leverage AI coding assistants and LLM-based tools to accelerate development workflows, improve code quality, and solve complex technical problems — including prompt crafting, output validation, and knowing when not to rely on AI suggestions.

Preferred Qualifications

Master’s degree in Computer Science or a related field.

Hands-on experience deploying Go services in AWS (DynamoDB, EC2, ECS/EKS) or comparable cloud environments, including containerized workloads (Docker/Podman, Kubernetes).

Experience with gRPC and Protocol Buffers, including proto schema design and code generation toolchains (e.g., buf).

Familiarity with distributed systems patterns: leader election, TTL-based locking, key-value stores (etcd, BoltDB), and graceful multi-node shutdown.

Experience with network automation, CLI tooling, or integration with vendor device APIs (SSH, NETCONF, scrapligo).

Prior work in an Agile environment with end-to-end ownership across the full SDLC — design, implementation, testing, CI/CD, and release.

Demonstrated ability to deliver high-quality software independently, communicate trade-offs across teams, and uphold code quality standards through peer review.

Experience with CI/CD pipelines (GitLab CI or similar), Go testing tooling (go test, mocks, integration test patterns), and coverage enforcement.

Looking for more roles like this?

Join our talent network and get matched with similar opportunities from top companies.