Job Title: Senior Software Developer
Location: Salt Lake City, UT
Duration: Expected to span at least 12 months
Work Arrangement: Hybrid, allowing for a blend of remote and in-person work
Interview Type: Applicants should be prepared for both webcam and in-person interviews.
Primary Responsibilities for a Senior Software Developer:
- A Senior Software Developer is responsible for the development of event-driven microservices, encompassing domain modeling.
- They are tasked with the application of best practices in software development and the strict adherence to secure coding standards and practices.
- As a Senior Software Developer, they construct web applications using technologies such as .NET, C#, CSS, Angular, and Azure.
- Effective collaboration within an agile work environment is a key part of the role.
- Active participation in the analysis, design, and testing phases within a Selenium framework.
- The Senior Software Developer is responsible for the implementation of systems engineering and architectural design principles to ensure optimized and loosely coupled applications.
- Proficiency in container orchestration and building applications within containers is a vital skill.
- Demonstrated customer service and interpersonal skills are essential for this role.
- The Senior Software Developer is expected to possess innovative problem-solving abilities and a deep understanding of data collections and data flow.
- They must have the ability to work harmoniously within cross-functional teams to accomplish shared objectives.
- A willingness to undertake other duties as assigned is expected of a Senior Software Developer.
Key Requirements for a Senior Software Developer:
- Possess a minimum of 5 years of functional experience in .NET, C#, CSS, and Angular.
- A proven track record of at least 5 years in Test-Driven Development (TDD).
- A minimum of 3 years of hands-on experience with event-driven microservices.
- Demonstrated expertise with Azure Infrastructure and DevOps for at least 3 years.
- A minimum of 2 years of experience in Domain-Driven Design, including context mapping and domain modeling.
- At least 1 year of practical experience in containerization orchestration.
- A deep understanding of agile methodologies, preferably with experience working in Agile/Scrum environments.
- A self-starting, hardworking, and inquisitive work ethic, indicative of strong initiative.
- Proven ability to collaborate effectively within cross-functional delivery teams.
Bonus Skills for a Senior Software Developer:
- Aptitude in application architecture and systems design.
- Possession of relevant certifications.
Adame Services is based in Salt Lake City, Utah, USA, and operates within the Technology industry.
It’s important to note that the preferred candidate for this Senior Software Developer position should have a minimum of 10 years of relevant experience and should either be a local resident of Salt Lake City or within a commutable distance. Additionally, local identification and address proof will be required as part of the application process. If you meet these qualifications and possess the requisite skills and experience, this opportunity could be an excellent match for you. A Senior Software Developer is a professional with a high level of expertise in software development. They typically have several years of experience and are responsible for designing, developing, testing, and maintaining software applications. Here are some key aspects of the role of a Senior Software Developer:
- Software Development: Senior Software Developers are skilled in programming languages and development tools. They write, test, and maintain code for various software applications, ensuring they meet the specified requirements and quality standards.
- Full Stack Development: Many Senior Software Developers have experience in both front-end and back-end development. This means they can work on the user interface (UI) as well as the server-side components of an application.
- Leadership: Senior Software Developers often take on leadership roles within development teams. They may lead and mentor junior developers, provide technical guidance, and make architectural decisions for projects.
- Problem Solving: They are adept at problem-solving and debugging, able to identify and resolve issues in the code efficiently.
- Best Practices: Senior Software Developers follow software development best practices and coding standards to ensure the reliability, security, and maintainability of the software they create.
- Collaboration: They work closely with cross-functional teams, including designers, product managers, and quality assurance professionals, to deliver software projects.
- Agile Methodologies: Many Senior Software Developers are experienced in agile development methodologies, such as Scrum or Kanban, which emphasize iterative development and collaboration.
- Testing: They understand the importance of testing, including unit testing, integration testing, and user acceptance testing. Test-Driven Development (TDD) is often part of their skill set.
- Technology Stack: The specific technologies and programming languages they work with may vary based on the job requirements. In your previous job posting, .NET, C#, CSS, Angular, Azure, and container orchestration were mentioned as relevant technologies.
- Continuous Learning: Software development is a field that constantly evolves. Senior Software Developers are often committed to continuous learning and staying up-to-date with the latest industry trends and technologies.
- Domain Knowledge: Depending on the industry they work in, Senior Software Developers may develop expertise in a specific domain, such as finance, healthcare, e-commerce, or others.
- Documentation: They often create and maintain documentation for their code, making it easier for team members to understand and work with the software.
Overall, a Senior Software Developer plays a crucial role in the development of software solutions, bringing a wealth of experience and technical knowledge to the team. They contribute to the success of projects by ensuring that software is well-designed, efficient, and meets the needs of the end users.