Radiant logo

Senior Software Engineer

Radiant
Full-time
Remote
United States
$178,000 - $201,000 USD yearly
Software / Technology / IT
A Senior Software Engineer is a pivotal role within the technology team, responsible for designing, developing, and maintaining complex software systems. They lead in technical decision-making, guide junior engineers, and ensure that software solutions are scalable, maintainable, and align with business goals.

Key Responsibilities:

1. Software Development:
   - Design, code, and test software applications or systems, focusing on scalability, robustness, and efficiency.
   - Write clean, maintainable, and testable code adhering to coding standards and best practices.
   - Refactor and optimize existing codebases to improve performance and scalability.

2. Technical Leadership:
   - Mentor junior developers, providing technical guidance and code reviews.
   - Lead architectural discussions and make decisions on technology stack, frameworks, and methodologies.
   - Drive innovation by introducing new technologies or methods that can benefit the project or company.

3. Project Management:
   - Coordinate with cross-functional teams including product management, QA, and DevOps to deliver projects on time.
   - Break down complex problems into manageable tasks, estimate effort, and plan sprints or milestones.
   - Manage project risks, dependencies, and ensure project deliverables meet quality standards.

4. System Design:
   - Architect high-level solutions for new features or systems, considering factors like security, performance, and user experience.
   - Design APIs, integration points, and data models that are future-proof.
   - Ensure the software architecture supports scalability and can accommodate future growth or changes.

5. Problem Solving and Debugging:
   - Diagnose and resolve complex technical issues, often involving deep system knowledge.
   - Implement robust error handling, logging, and monitoring to preemptively address potential failures.

6. Quality Assurance:
   - Advocate for and implement automated testing practices, including unit tests, integration tests, and end-to-end tests.
   - Participate in code reviews to uphold code quality, security, and to share knowledge within the team.

7. Documentation and Knowledge Sharing:
   - Document design decisions, APIs, and operational procedures to aid in maintenance and onboarding.
   - Contribute to the company's knowledge base or tech blog to share insights and learnings.

8. Stakeholder Interaction:
   - Communicate technical concepts to non-technical stakeholders effectively.
   - Gather requirements, provide feedback, and help shape product strategy based on technical feasibility.

Skills and Qualifications:

- *Education:* Requires a Bachelor's degree in Computer Science, Software Engineering, or a related field. A Master's degree or equivalent experience can be a plus.
- Experience: Generally, 5-10 years of software development experience with significant time in a senior or lead role.
- Technical Proficiency:
  - Expertise in one or more programming languages (e.g., Java, Python, C#, JavaScript).
  - Strong understanding of software design patterns, algorithms, and data structures.
  - Experience with cloud services (AWS, Azure, Google Cloud), microservices, and containerization (Docker, Kubernetes).
  - Knowledge of Agile/Scrum methodologies and tools for version control (Git).

- Soft Skills:
  - Excellent problem-solving and analytical skills.
  - Strong communication abilities for explaining complex technical details.
  - Leadership and team-building skills.

Benefits:

  • Wellness program
  • Health insurance
  • Unlimited paid time off
  • Dental insurance
  • 401(k)
  • Vision insurance