就拿我身边一个朋友做比较。

这个一线随便找都8K+,上万是有的,甚至2万都有可能。

他是没有学历,算半自学吧,去读了一下那些技术学校,但是退学了,然后隔了好几年,中间根本没有自学。。几年后找到编程的工作,起初工资很低,做了2年后上到8K,这是在4线城市,如果继续做下去上万不成问题的,但实际上,上万都是少的,其实他还可以有更好的路走,项目都是他单人开发的,其中一个项目利润每月10多万起步,从他入职一直运营到离职,离职后也有人拉他继续做这个,他找渠道他做技术他都可以做老板了,只是这个方向不是那么好,没走下去。。有点荒谬。。这方向都说不好。。换别人肯定跟人合伙做老板啦,每月稳定赚几十K,而且他那个项目潜力还很大,渠道给力的话翻个10倍不成问题,以国内的环境,绝对可以做一辈子。。。

一个普通人没有学历,自学编程,找到一份月入过万的程序员工作真的有可能吗?_零基础入门

说回正事吧,关键点在哪呢?

一,4线城市有些互联网公司完全不看你学历,但看你工作质量,什么意思呢?就是你来面试,他会直接给你offer,很大几率他们没人懂编程是什么,也不知道怎么面试,就给你一个机会,看你能不能做出他们想要的东西,做不出来就叫你回去,当时我的职位要求的编程水平不高,我刚好能应付。

二,学习跟工作是两回事,工作上带给你的提升是你无法想象的。。可能也跟当时公司环境有关,机会比较多,接触到的东西也多,打个比方,要做个安卓端,换其他公司可能有专业的前端安卓开发工程师来负责,而那个公司不是,要做安卓,那你就做个安卓,要做个windows桌面程序,那你就再做个,要做服务端,那也一样,还是你,苹果?一样,还是你,反正做什么都是你这个职位,没有其他什么前端后端,语言也是,你爱用java用java,不爽了用c#,你喜欢就行。

三,要花多少毅力,多少时间?说实在比较惭愧。。我去学校读了2年也就学了1年,有1年是在玩游戏。。退学后就没学了,然后到入职。。入职后算比较努力吧,可以说比任何人都努力,实现的成就对自己来说还好吧,对公司,公司老板来说,他们都发财了。。小钱都不想赚了。

四,付出收获成正比吗?看你跟谁比,我小学到高中都没努力过。。就初中努力过半个学期成绩进步了一下,毕业去读技术学校努力了1年,加起来也不过1-2年,但实际跟其他人其实没啥区别的,我经常面试很多本科毕业的,甚至很多在一线混得很好拿10几K回来的,工资都没我高。。不过我本身数学逻辑这些能力本来也不差,而且喜欢挑战高难度,越挫越勇,无挫反而觉得没意思,这样的态度多多少少也有关系吧。现在我去找工作都是直接写之前是CTO,技术总监这种职位,实际上我之前的工作确实也是干这些。

最后总结一下吧,我相信任何东西都是无独有偶的,当然也不是100%会一样结果。

小城市随便入职,你真的不用懂那么多,做出你公司要求那些东西就行了,你懂很多,做不出公司要求又有何用呢?不用懂很多也能做出东西?别怀疑,事实就是这样!做出东西之后你需要一点点运气,公司成功了,你才能谈得上成功,多少能分你一点,当然,小城市的天花板很低,进一步其实是做老板,我只走了一半的路,后面去做其他的了,其实做老板是可以很顺利的,个人性格关系吧,我喜欢自由自在,亲历亲为,不太喜欢使人做事。

最后如果你想要自学编程,入门Android开发,这里就给大家带来一个安卓入门学习的资料,文末直接可以领取。

安卓入门学习资料

文章的结尾,就给大家带来一个安卓入门学习的资料,文末直接可以领取。

Java语言基础从入门到熟悉

一. Java综述

  • 面向对象
  • 设计模式

二. Java基础

  • 基础笔记
  • 接口与抽象类

三. class

  • Java 类的基础,class 基础
  • Java 类初始化顺序

四. 面向对象

  • 抽象,封装,继承,多态
  • 多态

五. 容器

  • Java集合类
  • ArrayList介绍
  • Map

六. 多线程

  • 线程简介
  • Java 读写锁

七. IO

  • Java读写文件
  • Java读写xls文件

八. 正则表达式

  • 使用正则表达式
  • 查找特定字符串
  • 提取特定字符

九. 日历


十. 注解使用与简单说明


十一. Java使用加密算法


一个普通人没有学历,自学编程,找到一份月入过万的程序员工作真的有可能吗?_android_02

Kotlin语言基础从入门到熟悉

一. Kotlin系列简介

  • 系列大纲

二. 新建项目

  • Hello World
  • 变量

三. 概念介绍

  • 包的定义和使用
  • 程序入口
  • 标准输出
  • 方法
  • 变量

四. 常用写法

  • 方法参数的默认值
  • 过滤列表
  • 检查某个元素是否在集合里

五. lambda

  • 什么是 Lambda 表达式
  • 简化 Lambda 表达式
  • 从 Lambda 中返回
  • Lambda 表达式的类型

一个普通人没有学历,自学编程,找到一份月入过万的程序员工作真的有可能吗?_程序人生_03

六. 高阶函数

  • 高阶函数介绍
  • Kotlin常用标准高阶函数介绍

七. 扩展函数

  • 何为扩展函数
  • 扩展函数的解析为静态的

八. 协程

  • Kotlin协程入门
  • Kotlin协程基础
  • Kotlin协程取消与超时

Android 技术栈从入门到熟悉

一. 开始

  • 新建App工程
  • Android项目使用kotlin

二,Activity

  • Android Activity综述
  • Activity 生命周期
  • Activity 启动,携带参数启动

三. Service 服务

  • Service 综述
  • 后台服务
  • 启动前台服务
  • IntentService 分析和用法

四. Broadcast 广播机制

  • 广播机制 Broadcast 介绍与使用
  • Android 监听屏幕亮灭

五. Fragment

  • Fragment 基础概念
    -Fragment 加载方法

六. res应用资源

  • res资源目录简介
  • shape的绘制和使用
  • Android Button,TextView背景增添动感

七. 权限

  • Android 添加自定义权限

八. TextView 显示文字

  • TextView简介
  • textStyle
  • Android 字体(字库)

九. EditText 用户输入

  • EditText 监听回车
  • EditText 光标移动与选择

十. Button 按钮

十一. ImageView 图片显示

十二. Layout布局

十三. DrawerLayout侧滑栏

十四. RecyclerView 显示列表

十五. 多线程

十六. IO 操作

十七. 存储

十八. NetWork 网络

十九. ProgressBar进度条

一个普通人没有学历,自学编程,找到一份月入过万的程序员工作真的有可能吗?_零基础入门_04

二十. View
二十一. 自定义View
二十二. 动画
二十三. WebView
二十四. StatusBar
二十五. Camera相机
二十六. Media
二十七. Bluetooth 蓝牙
二十八. WiFi连接
二十九. 获取手机当前角度
三十. launcher
三十一. AIDL
三十二. zip
三十三. Binder
三十四. Notification 通知
三十五. PackageManager
三十六. RTFSC
三十七. 设计模式
三十八. 第三方库
三十九. Android Studio
四十. 模块化
四十一. Gradle
四十二. NDK
四十三. 调试

一个普通人没有学历,自学编程,找到一份月入过万的程序员工作真的有可能吗?_Java_05

Android Jetpack 全家桶全面学习

一. 介绍

  • 在 Fragment 之间共享数据

二. databinding

  • 使用databinding
  • 数据绑定
  • 使用可观察数据对象ObservableField

三. LiveData 事件传送

  • 准备数据类型
  • layout
  • Activity设置

四. LifeCycle 生命周期

  • 活动
  • 状态转换

五. WorkManager

  • 入门示例
  • WorkManager工作约束,延迟与查询工作
  • WorkManager定时任务

六. ViewModel

  • ViewModel 概览
  • Activity使用ViewModel

七. 数据库

  • 开始使用Room
  • 实体类介绍

八. Paging

  • 从使用角度看结构
  • 分析准备