Mid-Level Back End Software Developer
Role details
Job location
Tech stack
Job description
We are seeking a talented and motivated Back End Software Developer to join our Software Engineering team. You will be working collaboratively to design, develop, deploy and maintain back-end services that power our innovative solutions. This is a flexible in-office position and an excellent opportunity to contribute to solutions that power the next generation of telecommunications solutions.
Responsibilities:
-
Design and maintain robust, scalable back-end services
-
Develop clean, well-documented, and testable code, adhering to industry best practices
-
Lead and participate in architectural discussions
-
Troubleshoot and resolve production issues, ensuring high availability and performance
-
Contribute to the automation of our infrastructure and deployments
-
Contribute to improving our engineering practices and standards
Requirements
Do you have experience in gRPC?, Do you have a Bachelor's degree?, Technical Skills
-
Expertise with library and web service APIs including REST and gRPC
-
Expertise with message-bus architectures and message queue implementations
-
Proficiency in programming languages such as Golang (Go), Python or Typescript
-
Experience working with microservice architectures
-
Familiarity with aspect of 3GPP cellular communications (5G NR, 4G LTE, 3G WCDMA) systems such as the air interface, RAN or CoreNET
-
Solid understanding of Linux operating systems
-
Experience with containerization technologies and virtualization (Docker, VMware)
-
Experience with CI/CD pipelines and automation tools
-
Experience with SQL and relational databases
Professional Skills
-
Bachelor's degree or higher in computer science or a related field
-
4+ years of professional software development experience
-
Excellent written and verbal communication, collaboration, and problem-solving skills.
-
Strong time management abilities to meet project deadlines.
-
Reliable and demonstrates a professional work ethic.
-
Intellectual curiosity and the ability to learn new technologies quickly.
It would be even better if you have experience with:
-
DevOps CI/CD using GitLab, GitLab runners, or Ansible/AWX
-
Agile/SCRUM development processes
-
RabbitMQ, WAMP, AMQP or other message queue libraries
-
Networking and security protocols (TCP/IP, TLS)
-
AWS cloud services and general cloud computing principles
-
Infrastructure-as-code tools, like Terraform or CloudFormation
-
Monitoring and logging tools, like Prometheus, Grafana, or ELK stack