What are the responsibilities and job description for the Senior Software Engineer position at SwipeClock, LLC?
Summary:
We are seeking a highly skilled and motivated Senior Software Developer to join our team in building and maintaining a custom Android-based timeclock application that operates on physical clock hardware. This is an opportunity to make a big impact and influence on one of SwipeClock’s leading product offerings. In this role, you will be responsible for development and maintenance of our timeclock app and the backend cloud services it communicates with. You will ensure the smooth operation of the system by leveraging your expertise in mobile application development, backend services, and cloud architecture.
Key Responsibilities:
- Android Application Development & Maintenance:
- Design, develop, and maintain a custom timeclock application that runs on Android and interfaces with physical clock hardware.
- Troubleshoot and debug issues, optimize the application for performance, and deliver a high-quality user experience.
- Implement new features and enhancements based on user feedback and business requirements
- Backend Cloud Services Development & Maintenance:
- Design, develop, and maintain cloud-based backend services that handle data syncing, time tracking, user management, and other backend functionalities for the timeclock application.
- Monitor backend performance, scalability, and security, ensuring high availability and minimal downtime.
- Integrate backend services with third-party APIs and other internal systems as needed.
- Collaborate with cross-functional teams (e.g., DevOps, UI/UX designers) to ensure the system is well-integrated and meets business goals.
- Collaboration & Leadership:
- Collaborate with product, QA engineers, and other stakeholders to understand use cases and improve the user experience.
- Lead and mentor junior developers, providing guidance on best practices, code reviews, and technical problem-solving.
- Participate in design and architecture discussions, helping to shape the direction of both the mobile app and backend services.
- Monitoring & Performance Optimization:
- Continuously monitor the performance of both the Android app and backend services, identifying and resolving bottlenecks and performance issues.
- Implement logging, monitoring, and alerting systems to ensure smooth operation and prompt identification of issues.
Qualifications:
- Bachelor's degree in Computer Science, Software Engineering, or a related field (or equivalent work experience).
- 5 years of experience in Android application development, including expertise in Java and Android SDK.
- Strong experience with RESTful APIs and cloud services (AWS, GCP, Azure, etc.), as well as data synchronization between mobile applications and cloud backends.
- Proficiency in backend development technologies such as Node.js, Python, Java, or similar.
- Familiarity with hardware integration and working with embedded systems is a plus.
- Experience with version control systems (Git), CI/CD pipelines, and agile development practices.
- Strong problem-solving skills and ability to troubleshoot complex issues in both mobile and cloud environments.
- Excellent communication skills and the ability to work effectively in a collaborative team setting.
Preferred:
- Experience with timeclock or workforce management systems.
- Familiarity with IoT or physical device communication protocols.
- Knowledge of security best practices for mobile applications and cloud services.
Compensation and Benefits:
- Competitive Salary DOE
- Healthcare plans which include HSA and FSA
- 6% 401K match
- Life and disability insurance
- Competitive PTO plan
- Tuition reimbursement
- Health and wellness reimbursement program
- Flexible working hours
- Work life balance
- Fun and collaborative culture