Mid-Level Software Engineer

AI overview

Contribute independently to the design and delivery of medium-sized features while mentoring junior engineers and collaborating with cross-functional teams to ensure software quality and scalability.

The Software Engineer (SE-2) is a mid-level role for developers who have established a solid technical foundation and are ready to take on more complex tasks with greater independence. At this tier, engineers are expected to deliver medium-sized features end-to-end, contribute to technical discussions, and begin mentoring junior team members. SE-2 engineers play a crucial role in ensuring the quality and scalability of the software they develop while collaborating effectively within a team.

This role marks a transition from learning to contributing independently, with a growing focus on ownership, problem-solving, and collaboration.

Requirements

Key Responsibilities

  • Independently design, develop, and deliver medium-sized features and components.
  • Troubleshoot and resolve moderately complex bugs, performance issues, and technical challenges.
  • Contribute to code reviews, providing detailed and constructive feedback to peers and junior engineers.
  • Follow and improve team coding standards, best practices, and software development workflows.
  • Write and maintain comprehensive unit tests and contribute to improving overall code coverage.
  • Document solutions, processes, and technical decisions for clarity and future reference.
  • Participate in technical discussions and contribute ideas for solving project challenges and improving processes.
  • Collaborate effectively with Tech Leads, product managers, designers, and QA engineers to clarify requirements and ensure feature delivery.
  • Mentor and assist junior engineers (SE-1 and Interns), helping them improve their coding and debugging skills.
  • Learn and apply new technologies, tools, and frameworks as required by the team or project.

Skills & Qualifications

  • Proficiency in at least one programming language (e.g., JavaScript, Python, C#).
  • Solid understanding of software development concepts:
    • Data structures and algorithms.
    • Debugging and problem-solving techniques.
    • Write clean, maintainable, and efficient code following SOLID principles and team best practices.
  • Experience working with relational and/or NoSQL databases (e.g., PostgreSQL, SQL Server, MongoDB).
  • Practical experience with cloud platforms (e.g., AWS, Azure, or GCP).
  • Experience implementing and maintaining CI/CD workflows (e.g., GitHub Actions).
  • Familiarity with Agile methodologies (e.g., Scrum, Kanban) and tools like Jira, Azure DevOps.
  • Understanding of RESTful APIs, HTTP protocols, and basic architectural patterns.
  • Experience with version control systems, particularly Git.
  • 2–4 years of professional experience as a software developer.
  • Strong communication, collaboration, and problem-solving skills.
  • Exposure to front-end frameworks like React or Vue.js or Angular.

Additional Skills (Nice to Have)

  • Experience optimizing software for performance, scalability, and reliability.
  • Familiarity with containerization tools like Docker or orchestration tools like Kubernetes.
  • Basic knowledge of security best practices for software development.
  • Contributions to open-source projects or personal coding projects.
  • Experience with React Native and mobile application development in general.

Career Path Recommendations

For SE-2 engineers aiming to advance to SE-3 (Senior Software Engineer), we recommend:

  • Taking ownership of increasingly complex and critical projects.
  • Developing deeper expertise in system design, architecture, and scalability.
  • Expanding proficiency with cloud platforms, CI/CD, and performance optimization.
  • Contributing to technical decision-making and mentoring junior team members more actively.

Evaluation Metrics

Managers will evaluate SE-2 engineers based on:

  • Ability to deliver features with quality and growing autonomy.
  • Proficiency with databases, cloud platforms, and CI/CD tools.
  • Consistency in adhering to team processes, Agile practices, and coding standards.
  • Effective collaboration with Tech Leads, peers, and stakeholders.
  • Mentoring contributions and ability to help junior engineers grow.

CODE Éxitos is a product studio. We help entrepreneurs design, build, and launch digital products. We believe the digital future should be a place where craftsmanship and innovation are rewarded, regardless of where the craftsmen and innovators live. And by rewarding brilliant people with world-class work, we empower them to radically improve their lives, their families, and their communities.

View all jobs
Get hired quicker

Be the first to apply. Receive an email whenever similar jobs are posted.

Ace your job interview

Understand the required skills and qualifications, anticipate the questions you may be asked, and study well-prepared answers using our sample responses.

Software Engineer Q&A's
Report this job
Apply for this job