We are looking for a talented and experienced Software Engineer II to join our dynamic team.
This role will provide you with the opportunity to work on cutting-edge SaaS technologies and impactful projects that are used by enterprises and users worldwide.
As a Software Engineer II, you will be involved in the design, development, testing, deployment, and maintenance of software solutions.
You will work in a collaborative environment, contributing to the technical foundation behind our flagship products and services.
Responsibilities:
Software Development: Write clean, maintainable, and efficient code or various software applications and systems.
Design and Architecture: Participate in design reviews with peers and stakeholders and in the architectural design of new features and systems, ensuring scalability, reliability, and maintainability.
Want more jobs like this?
Get jobs in Montevideo, Uruguay delivered to your inbox every week.
Code Review: Diligent about reviewing code developed by other developers, providing feedback and maintain a high bar of technical excellence to make sure code is adhering to industry standard best practices like coding guidelines, elegant, efficient and maintainable code, with observability built from ground up, unit tests etc.
Testing: Build testable software, define tests, participate in the testing process, automate tests using tools (e.g., Nunit, Selenium) and Design Patterns leveraging the test automation pyramid as the guide.
Debugging and Troubleshooting: Triage defects or customer reported issues, debug and resolve in a timely and efficient manner.
Service Health and Quality: Contribute to maintaining the health and quality of services and incidents, promptly identifying and escalating issues. Collaborate with the team in utilizing service health indicators and telemetry for action. Assist in conducting root cause analysis and implementing measures to prevent future recurrences.
Dev Ops Model: Understanding of working in a DevOps Model. Taking ownership from working with product management on requirements to design, develop, test, deploy and maintain the software in production.
Documentation: Properly document new features, enhancements or fixes to the product, and also contribute to training materials.
Minimum Qualifications:
Bachelor's degree in Computer Science, Engineering, or a related technical field, or equivalent practical experience.
2+ years of professional software development experience.
Proficiency in one or more programming languages such as C#, .NET, Java, Kotlin, Python
Experience with software development practices and design patterns.
Strong problem-solving skills and attention to detail.
Familiarity with version control systems like Git GitHub and bug/work tracking systems like JIRA.
Basic understanding of cloud technologies and DevOps principles.
Strong analytical and problem-solving skills, with a proven track record of building and shipping successful software products and services.
Good communication and interpersonal skills, with the ability to work effectively in a collaborative team environment.
Preferred Qualifications:
Master's degree in Computer Science, Engineering, or a related technical field.
Experience with cloud platforms like Azure, AWS, or GCP.
Experience on programming languages Java or/and Python.
Familiarity with CI/CD pipelines and automation tools.
Experience with test automation frameworks and tools.
Knowledge of agile development methodologies.
Commitment to continuous learning and professional development.