Sr. Go Developer
An important USA, Washington company that provides services for the US Department of Security: migration, antiterrorism and airport security is looking for Go Developer to participate in the conceptualization, design, development, integration and testing of advanced analytics solutions that operate with data from travelers and other sources.
Task & Responsibilities
Design, develop, document, test and debug software to solve business/mission problems.
Provide operational support to global technical resources, who are responsible for deploying and maintaining their team's products.
Increase the efficiency of software development and testing processes by improving automation.
Correct program bugs, prepare operating instructions, compile program development documentation, and analyze system capabilities to resolve issues related to program intent, output requirements, input data acquisition, programming techniques, and controls.
Provide technical guidance and mentoring to other technical staff members.
Create novel concepts that contribute to the intellectual property portfolio.
Requirements
+2 years of experience as a senior technical resource for a team.
+2 years of experience with Go (Golang)
+7 or more years of software development experience.
Experience with full life cycle software development: requirements, design, development, test and delivery.
Experience with multiple computer languages and frameworks, with strong experience in a modern enterprise language (e.g., Golang, C#, Java)
Demonstrated experience developing production-quality APIs, microservices, and data access software
Experience in the development of asynchronous and distributed systems.
Experience developing secure APIs using REST and/or gRPC, with authentication and authorization (e.g., OIDC/OAuth2)
Experience with Git.
Experience with modern CI/CD technologies and principles (e.g. Jenkins)
Experience with Linux development.
Strong knowledge of and experience with building and deploying software in Docker containers.
Demonstrated understanding of relational databases and NoSQL databases (document, graph)
Experience with unstructured data processing (such as natural language processing)
Demonstrated experience in small agile teams (5-10 members)
Excellent writing, communication, presentation and design skills.
These skills are highly desired and are a differentiator for selection.
Development with Golang.
Creation and use of GraphQL endpoints and schemas.
Use of Kafka for distributed messaging.
Use of SQL Server (relational) and MongoDB (document) as data repositories.
Use of DGraph or other graph databases in production environments.
Use of Minio or other object stores in production environments.
Use of Docker Swarm or Kubernetes for orchestration.
These skills will greatly accelerate your ability to integrate with the team.
Deployment in commercial cloud architectures (e.g., Amazon AWS)
Use of GitHub for code management.
Use of Microsoft Azure DevOps (a.k.a. Team Foundation Services) for agile management.
Use of Jenkins for CI/CD.
These skills are desired but not required
JavaScript/TypeScript development.
Development of UIs using React or similar framework.
Creation of analytics that process large and diverse data sets.
Understanding of modern software-defined networks and storage.
Experience in systems engineering or systems administration.
Education: Bachelor's degree in Computer Science, Computer Engineering, or related field from an accredited university. Master's degree recommended.
Hiring
Contractor - Long Term
100% Remote
Full-Time, ET Schedule
Salary in USD