Senior Software Developer
New
BrazilFull-TimeSenior
Salary not disclosed
Apply NowOpens the employer's application page
Job Details
- Languages
- Advanced English
- Experience
- 4+ years of professional experience in software development
- Required Skills
- PostgreSQLKafkaMicrosoft SQL ServerRabbitmqC#CassandraRedisMicroservicesDistributed Systems
Requirements
- 4+ years of professional experience in software development outside of internships.
- 3+ years of experience with software design, architecture, scalability, and reliability of distributed systems.
- Strong programming skills in C# with experience building maintainable and reliable backend services.
- Solid experience designing scalable systems, including concepts such as load balancing, partitioning, sharding, and resource optimization.
- Hands-on experience with event-driven architectures and messaging technologies such as Kafka, RabbitMQ, AMQP, or similar tools.
- Strong understanding of observability practices, including SLIs, SLOs, monitoring, metrics, logging, and alerting systems.
- Experience working with SQL and NoSQL databases such as PostgreSQL, Microsoft SQL Server, or Cassandra.
- Practical experience implementing caching strategies and technologies like Redis.
- Advanced English proficiency, both written and spoken.
- Experience working within agile and collaborative development environments.
- Strong communication, leadership, mentoring, and problem-solving abilities.
Responsibilities
- Design, develop, and maintain scalable software solutions using modern engineering practices and clean architecture principles.
- Build and optimize distributed systems and microservices-based applications focused on scalability, reliability, and maintainability.
- Participate in the complete software delivery lifecycle, including design, implementation, testing, deployment, and monitoring.
- Apply and advocate for best practices such as clean code, reusable components, design patterns, and pair programming.
- Promote and contribute to continuous delivery and agile development methodologies to accelerate value delivery and software quality.
- Design and implement event-driven architectures using messaging and queue technologies.
- Collaborate with multidisciplinary teams including Business Analysts, Quality Analysts, and Project Managers to translate business needs into technical solutions.
- Ensure system observability through effective monitoring, logging, alerting, and reliability practices.
- Mentor junior and mid-level developers, supporting technical growth, collaboration, and engineering excellence across the team.
- Participate in architectural discussions, technical decision-making, and continuous improvement initiatives within the engineering environment.
View Full Description & ApplyYou'll be redirected to the employer's site