About this role
Role summary / purpose Employees in this job function are responsible for designing, developing, testing, and maintaining software applications and products to meet customer needs. They are involved in the entire software development lifecycle including designing software architecture, writing code, testing for quality, and deploying the software to meet customer requirements. Full-stack software engineering roles who can develop all components of software including user interface and server side also fall within this job function. Key responsibilities • Engage with customers to deeply understand their use-cases, pain points, and requirements, showcasing empathy and advocating for user-centric software solutions • Solve complex problems by designing, developing, and delivering using various tools, languages, frameworks, methodologies like agile, and technologies • Assess the requirements of the software application or service and determine the most suitable technology stack, integration method, deployment strategy, etc. • Create high-level software architecture designs that outline the overall structure, components, and interfaces of the application • Collaborate with cross-functional teams like product owners, designers, architects, etc. • Define and implement software test strategy, guidelines, policies, and processes in line with organization vision, industry regulations, and market best practices • Work on continuously improving performance and optimizing the application and implement new technologies to maximize development efficiency • Apply programming practices such as test-driven development, continuous integration, and continuous delivery • Support security practices to safeguard user data including encryption and anonymization • Create user-friendly and interactive interfaces • Develop and maintain back-end applications like APIs and microservices using server-side languages • Evaluate and incorporate emerging technologies and capabilities to deliver solutions and monitor and participate in solutions for new stack layers, often involving industry collaboration Requirements – education & experience • 6 years in IT • 4 years in development • Practical experience in 2 coding languages or advanced practice in 1 language Required skills • Agile methodologies • Code quality tools such as SonarQube • Service interaction tools such as APIGEE and Swagger • Continuous Integration/Continuous Delivery tools and pipelines such as Jenkins, Maven, and Gradle • Spring Cloud and cloud platform deployment • Effective collaboration with technical specialists, Product Managers, UI/UX Designers, and Product Owners • Strong communication and leadership skills • Ability to work in teams and individually as needed Nice-to-have / preferred skills • Java, Spring Boot, Angular, CI/CD, Jenkins, GitHub, GCP, APIs, and TDD • Experience with Agile methodologies and tools such as Rally • Technical design, coding with test automation support, and documentation of software application modifications • Test plan development, execution, and continuous release management • Leadership experience with software engineers on complex solutions • Software craftsmanship principles and successful implementation • Development of tools and processes to automate feature delivery and eliminate waste • Self-motivated with a continuous learning mindset • Passionate about your discipline and striving for continuous improvement
Posted by Bartech Staffing on behalf of a vetted Big Three US automaker client. Your recruiter confirms the exact rate when you connect.